初步使用bootstrap快速创建页面


Posted in Javascript onMarch 03, 2016

1. 安装bower前端包管理器

bower是一个前端软件包管理器,便于安装、更新以及卸载javascript,css,html等框架资源,并解决之间的相互依赖关系。

npm install -g bower // 安装
bower help // 查看帮助

这里YY一下:

npm是node.js的包管理器,通过它安装了express,express-generator,supervisor,bower等等软件,bower又是前端框架的软件包,安装了bootstrap以及jquery等一些依赖包。突然发现简直是包包相扣啊,渐渐的醉了。其中的水实在是太深了,想简单学个web开发也不是那么容易的事啊,有种淡淡的忧伤。然并卵,心向往之,一如既往。

2. 安装bootstrap以及jquery

当然你也可以直接将bootstrap以及jquery下载下来,放入项目文档中,不用安装什么包管理器,自己解决简单的依赖关系就OK了,但是不都是为了快速建站嘛,装个包管理器自动解决依赖关系。并且在发布自己的项目的时候,也不需要将所有的框架包一块发布,而只需将相关的json文件放到项目里就可以了,别人一目了然你的依赖关系,便于快速搭建。

有了bower,直接bower install bootstrap就OK了,因为依赖关系,它会自动给你装上jquery,完事。

3. 模板引擎中引入bootstrap以及jquery

安装好了或者说项目中已经放置好了bootstrap和jquery之后,接下来就是在文件中引用它,在views文件夹中创建一个head.jade文件,顾名思义就是放置HTML中head标签里面的一些内容。如下代码:

link(href='/bootstrap/dist/css/bootstrap.min.css',rel='stylesheet')
script(src='/jquery/dist/jquery.min.js')
script(src='/bootstrap/dist/js/bootstrap.min.js')

创建完head.jade后,接下来在所有需要的页面中,加上include head.jade包含到页面中就OK了。

4. 使用模版布局

由于基本上所有的页面都需要包含head.jade,总不能每个页面都写上include head.jade 吧,于是布局文档layout.jade就要起作用了。单独创建layout.jade文件,将一些共性的代码写进去。

doctype html
html
 head
 title= title
 link(rel='stylesheet', href='/stylesheets/style.css')
 include ./includes/head
 body
 include ./includes/header
 h1= title
 block content

如上,一些独立的模块依然可以通过include语句进行加载,最后一句block content就是模版布局的关键,意思就是在模版的此处插入页面,也就是应用此模版布局的差异处。

然后在应用此模版布局的页面中,加上extent layout就OK了。如下:

extends ../layout
block content
 p Welcome to #{title}

注意:extends模版文件以及include代码中使用文件尽量使用相对路径。

5. 开始编辑页面

准备工作都做得差不多了,那么接下来就是使用jade语法以及bootstrap样式来编辑页面了。下面简单大致写个首页(index)以及详情页(detail)。

初步使用bootstrap快速创建页面

// index.jade
extends ../layout

block content
 .container
 .row
 h1= title
 small 图书列表
 each item in books
 .col-md-3.col-xm-6
  .thumbnail.text-center
  a(href='/books/#{item._id}')
  img(src='#{item.poster}',alt='#{item.title}')
  .caption
  h3= item.title
  .btn-group
  a.btn.btn-primary(href='/books/#{item._id}') 查看详情
  a.btn.btn-primary(href='#{item.buyUrl}') 购买书籍

初步使用bootstrap快速创建页面

// detail.jade
extends ../layout

block content
 .container
 .row
 h1= title
 small= book_title
 .col-md-9.col-sm-9
 .thumbnail
  img(src='#{book_poster}')
  .caption
  p= book_info
  a.btn.btn-primary(href='#{book_buyUrl}') 购买书籍
 .col-md-3.col-sm-3
 h3 作者
 p #{book_author}
 h3 出版年月
 p #{book_year}年
 h3 页数
 p #{book_pages}页
 h3 定价
 p ¥#{book_price}

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程

上面两个页面是bootstrap里最基本的布局,文章就为大家介绍到这,感兴趣的朋友可以继续研究,共同探讨。

Javascript 相关文章推荐
js getElementsByTagName的简写方式
Jun 27 Javascript
Node.js实战 建立简单的Web服务器
Mar 08 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
Dec 11 Javascript
Jquery显示、隐藏元素以及添加删除样式
Aug 09 Javascript
Javascript+CSS实现影像卷帘效果思路及代码
Oct 20 Javascript
jQuery中end()方法用法实例
Jan 08 Javascript
jQuery实现下拉框功能实例代码
May 06 Javascript
JavaScript实现图片切换效果
Aug 12 Javascript
jQuery实现简单的计时器功能实例分析
Aug 29 jQuery
JQuery 获取多个select标签option的text内容(实例)
Sep 07 jQuery
移动web开发之touch事件实例详解
Jan 17 Javascript
postman+json+springmvc测试批量添加实例
Mar 31 Javascript
JS动态增删表格行的方法
Mar 03 #Javascript
微信jssdk在iframe页面失效问题的解决措施
Mar 03 #Javascript
基于javascript html5实现多文件上传
Mar 03 #Javascript
编写高质量JavaScript代码的基本要点
Mar 02 #Javascript
JS获取当前脚本文件的绝对路径
Mar 02 #Javascript
Webpack 实现 AngularJS 的延迟加载
Mar 02 #Javascript
浅谈JS原型对象和原型链
Mar 02 #Javascript
You might like
也谈 PHP 和 MYSQL
2006/10/09 PHP
PHP flock 文件锁详细介绍
2012/12/29 PHP
PHP生成随机用户名和密码的实现代码
2013/02/27 PHP
php使用base64加密解密图片示例分享
2014/01/20 PHP
php微信公众号开发(4)php实现自定义关键字回复
2016/12/15 PHP
PHP按符号截取字符串的指定部分的实现方法
2018/09/10 PHP
php获取目录下所有文件及目录(多种方法)(推荐)
2019/05/14 PHP
Laravel框架学习笔记之批量更新数据功能
2019/05/30 PHP
JavaScript学习点滴 call、apply的区别
2010/10/22 Javascript
jquery mobile事件多次绑定示例代码
2013/09/13 Javascript
js图片实时加载提供网页打开速度
2014/09/11 Javascript
JavaScript基础知识学习笔记
2014/12/02 Javascript
javacript使用break内层跳出外层循环分析
2015/01/12 Javascript
javascript伸缩型菜单实现代码
2015/11/16 Javascript
jquery中cookie用法实例详解(获取,存储,删除等)
2016/01/04 Javascript
BootStrap下jQuery自动完成的样式调整
2016/05/30 Javascript
【经典源码收藏】jQuery实用代码片段(筛选,搜索,样式,清除默认值,多选等)
2016/06/07 Javascript
jQuery点击弹出层弹出模态框点击模态框消失代码分享
2017/01/21 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
2020/01/11 jQuery
解决vue+ element ui 表单验证有值但验证失败问题
2020/01/16 Javascript
Vue优化:常见会导致内存泄漏问题及优化详解
2020/08/04 Javascript
python动态加载包的方法小结
2016/04/18 Python
Python实现字符串逆序输出功能示例
2017/06/24 Python
python3爬虫怎样构建请求header
2018/12/23 Python
Python定时发送天气预报邮件代码实例
2019/09/09 Python
PyQt5 closeEvent关闭事件退出提示框原理解析
2020/01/08 Python
Django如何实现密码错误报错提醒
2020/09/04 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
使用phonegap获取设备的一些信息方法
2017/03/31 HTML / CSS
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
2020/04/08 HTML / CSS
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
党员创先争优活动总结
2014/05/04 职场文书
关于读书的演讲稿1000字
2014/08/27 职场文书
2014年社区矫正工作总结
2014/11/18 职场文书
起诉意见书范文
2015/05/19 职场文书
html网页引入svg图片的4种方式
2022/08/05 HTML / CSS