[php] Laravel 4. twitter bootstrap 적용하기
# 요약
1. 우선 bootstrap을 다운로드 : http://getbootstrap.com/
2. public 폴더안에 css, fonts, js 폴더 통자로 복사 붙여넣기
3. 내가 만든 blade 또는 view파일에
{{ HTML::style('css/bootstrap.css') }}
{{ HTML::style('css/bootstrap-responsive.css') }}
{{ HTML::script('js/jquery.v1.8.3.min.js') }}
{{ HTML::script('js/bootstrap.min.js') }}
head사이에 넣기!
# 원문
The Twitter-Bootstrap is a simple front-end framework that is used in many web applications.
You can download the latest version at getbootstrap.com. Laravel also has a bootstrap-directory, but this has nothing to do with the Twitter-Bootstrap.
This chapter is based on the previous Using Templates chapter. To start directly, you have to download using-templates-package.
Add Bootstrap to your Application
To make the bootstrap available for our application we have to create some directories:
- /public/css
- /public/fonts
- /public/js
The downloaded bootstrap-package also has this directories somewhere inside. Just copy (extract) the files to the appropriate directories. In addition we download jQuery.com to supply it directly in our public js-directory. Now you should have following files in your public:
- /public/css/bootstrap.css
- /public/css/bootstrap.min.css
- /public/css/bootstrap-theme.css
- /public/css/bootstrap-theme.min.css
- /public/fonts/glyphicons-halflings-regular.eot
- /public/fonts/glyphicons-halflings-regular.svt
- /public/fonts/glyphicons-halflings-regular.ttf
- /public/fonts/glyphicons-halflings-regular.woff
- /public/js/bootstrap.js
- /public/js/bootstrap.min.js
- /public/js/jquery-1.11.1.min.js
Use Bootstrap in your Master-Template
We have to include the Bootstrap at our master template to supply it to all pages.
/app/views/layouts/master.blade.php:
<!DOCTYPE html> <html> <head> <title> @section('title') Laravel 4 - Tutorial @show </title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <!-- CSS are placed here --> {{ HTML::style('css/bootstrap.css') }} {{ HTML::style('css/bootstrap-theme.css') }} <style> @section('styles') body { padding-top: 60px; } @show </style> </head> <body> <!-- Container --> <div class="container"> <!-- Content --> @yield('content') </div> <!-- Scripts are placed here --> {{ HTML::script('js/jquery-1.11.1.min.js') }} {{ HTML::script('js/bootstrap.min.js') }} </body> </html>
According to the Bootstrap-Help we add a meta-tag "viewport" for mobile devices. We can use {{ HTML::style('...') }} to add a css and {{ HTML::script('...') }} to add a javascript to our template. So we insert two css and two scripts.
To get this example working we need to add a padding for our body to show the menu correctly. To give the views the possibility to change the styles we add a styles section.
If you test the view, you will not see much changes. In the next step we add a main navigation-bar.
/app/views/layouts/master.blade.php:
<!DOCTYPE html> <html> <head> <title> @section('title') Laravel 4 - Tutorial @show </title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <!-- CSS are placed here --> {{ HTML::style('css/bootstrap.css') }} {{ HTML::style('css/bootstrap-theme.css') }} <style> @section('styles') body { padding-top: 60px; } @show </style> </head> <body> <!-- Navbar --> <div class="navbar navbar-inverse navbar-fixed-top" role="navigation"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">Laravel</a> </div> <!-- Everything you want hidden at 940px or less, place within here --> <div class="collapse navbar-collapse"> <ul class="nav navbar-nav"> <li><a href="{{{ URL::to('') }}}">Home</a></li> </ul> </div> </div> </div> <!-- Container --> <div class="container"> <!-- Content --> @yield('content') </div> <!-- Scripts are placed here --> {{ HTML::script('js/jquery-1.11.1.min.js') }} {{ HTML::script('js/bootstrap.min.js') }} </body> </html>
I don't want to explain all the elements here. You can look at the Bootstrap Help.
For the Home-Button we insert {{{ URL::to('') }}} to get automatic the correct link to our homepage.
You can test the new layout in your browser.
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
829 | Develop | [ubuntu] 우분투 18.04에 PHP5 설치하기 | hooni | 2020.11.14 | 952 |
828 | Develop | [js] Text 값을 클립보드에 복사하기 | hooni | 2020.10.10 | 684 |
827 | Develop | [sh] 쉘스크립트 if 비교 연산 | hooni | 2020.05.26 | 60681 |
826 | Develop | [sh] html 안에 있는 img 다운 받는 쉘 스크립트 | hooni | 2020.05.26 | 645 |
825 | Develop | [ios] Start developing your navigation app for CarPlay without enrollment | hooni | 2020.02.22 | 124843 |
824 | Develop | [php] 3 Ways to Detect Mobile or Desktop in PHP | hooni | 2020.01.28 | 3730 |
823 | Develop | 자주 쓰는 Docker 명령어 alias | hooni | 2020.01.10 | 269904 |
822 | Develop | [python][django] request.cookie 읽어오기 ㅋㅋㅋ (쓰기) | hooni | 2019.12.06 | 1696 |
821 | Develop | [python] 파라미터 앞에 *, ** 의 의미? (*args, **kwargs) | hooni | 2019.11.22 | 1559 |
820 | Develop | 링크들 보고 지울 내용 | hooni | 2019.11.21 | 0 |
819 | Develop | [Javascript][Ajax] 자바스크립트 강의 산출물 | hooni | 2019.10.05 | 709 |
818 | Develop | [ios] Locale Identifiers | hooni | 2018.11.29 | 1634 |