[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.
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
921 | Develop | [java] netty (비동기 이벤트 방식 네트워크 프레임워크) 사용법 #1 (server) 1 | hooni | 2015.01.02 | 2214 |
920 | System/OS | [svn] 하나의 SVN에서 멀티 저장소 (One svnserve, multiple repositories) | hooni | 2015.01.02 | 1549 |
919 | Develop | ZBar 라이브러리를 이용한 바코드 스캔 앱 개발하기 | hooni | 2015.01.01 | 1629 |
918 | System/OS | iptime 공유기 해킹 기술문서 4 | hooni | 2015.01.01 | 1941 |
917 | System/OS | [svn] Can't convert string from native encoding to 'UTF-8' 메시지가 나오는 경우 | hooni | 2014.12.18 | 993 |
916 | System/OS | [svn] SVN trunk 변경사항 되돌리기 (SVN Rollback) | hooni | 2014.11.27 | 1565 |
915 | Develop | [ios] 비동기 블럭 코드 예제 | hooni | 2014.11.21 | 825 |
914 | Develop | [ios] 스크린 캡쳐 (전원버튼 + 홈버튼) 호출 알아내기 | hooni | 2014.11.19 | 1558 |
913 | Develop | [android] 가속도 센서를 이용한 흔듦(Shake) 감지 | hooni | 2014.11.04 | 1898 |
912 | Develop | [web] 더 빠른 웹을 위한 프로토콜, 'HTTP/2' | hooni | 2014.10.20 | 1641 |
911 | Develop | GPL, AGPL, MPL,.. 한눈에 보는 오픈소스SW 라이선스 | hooni | 2014.10.14 | 1146 |
910 | Develop | [js] 좋은 강연자료 & UI 자료 | hooni | 2014.10.06 | 912 |