基于Bootstrap3制作响应式布局网站(二)

前言

原创文章,欢迎转载,请保留出处。
有任何错误、疑问或者建议,欢迎指出。
我的邮箱:[email protected]

在上一篇文章中(http://blog.csdn.net/maxwell_nc/article/details/45791745)中主要讲到Bootstrap的栅格布局系统,虽然之前说要更新如何写导航栏,但是想了下还是先介绍下如何做CSS的媒体查询和响应式表格,这样才能为以后的编码打下基础。


CSS的媒体查询

我们要知道,实际上Bootstrap的栅格布局系统主要是利用的CSS的媒体查询特性来实现的,我们可以参考

http://www.ibm.com/developerworks/cn/web/wa-cssqueries/

媒体查询 是评估 True 或 False 的一种表达。如果为 True,则继续使用样式表。如果为 False,则不能使用样式表。这种简单逻辑通过表达式变得更加强大,使您能够更灵活地对特定的设计场景使用自定义的显示规则。

在bootstrap中,定义了下面几个关键的分界点阈值:

/* 超小屏幕(手机,小于 768px) */
/* 没有任何媒体查询相关的代码,因为这在 Bootstrap 中是默认的(Bootstrap 是移动设备优先) */

/* 小屏幕(平板,大于等于 768px) */
@media (min-width: @screen-sm-min) { ... }

/* 中等屏幕(桌面显示器,大于等于 992px) */
@media (min-width: @screen-md-min) { ... }

/* 大屏幕(大桌面显示器,大于等于 1200px) */
@media (min-width: @screen-lg-min) { ... }

分别对应栅格布局系统里面的

超小屏幕 .col-xs-* 小屏幕 .col-sm-*

中等屏幕 .col-md-* 大屏幕 .col-lg-*

实际开发中,我们自己写的CSS文件中可以这样定义

/* 这里是当浏览器宽度最大不超过767px时应用的效果 */
@media screen and (max-width: 767px) {
    .../*相当于在bootstrap定义的超小屏幕*/
}
/* 这里是当浏览器宽度最小不小于768px时应用的效果  */
@media ( min-width : 768px) {
    .../*相当于在bootstrap定义的除超小屏幕在外的屏幕*/
}

响应式的表格

首先什么是响应式的表格,简单来说,就是在不同宽度的浏览器下面显示的表格可以让人接受,不会“挤”在一起,看下两种情况的截图就知道了:

  • bootstrap3提供的默认的响应式表格:

  • 非响应式表格:

由于这里提供的表格数据还比较少,不能体会非响应式的表格带来的不便,尤其是数据列数和行数都非常多的情况下,表格会变得无法阅读,而响应式的表格就不会影响阅读。

响应式表格并非只有这种解决方案(Bootstrap3中的响应式表格),还有可以在列数比较少的情况下,把表头变成左边的第一列并且冻结,其他行转行为列来浏览;又或者在允许的情况下减少列数来显示数据…这个可以自己利用CSS媒体查询来实现,我这里不做具体介绍,我们主要介绍一下如何利用Bootstrap3快速实现响应式表格。

在Bootstrap3中有一个非常简单的方式实现响应式表格,那就是在table标签外面加上一个div标签,代码如下:

<div class="table-responsive">
    <table>
        ...
    </table>
</div>

即可实现上面展示的响应式表格。

自定表格的风格

这里来个小插曲,示范如何修改table的风格,

由于我上篇提供的源码没有这个效果,这次是我添加的小细节,而且背景色我稍微调了下,所以原来bootstrap提供的 table-striped类的颜色(斑马线颜色)和背景不协调,这里也稍微调了下,效果如下:

我这里的表格使用Bootstrap全局的CSS表格类 table-striped 和table-hover,前者是表格的斑马线(间隔颜色),后者是鼠标划过(停留在上面)时的特效。

/* 表格的间隔颜色 */
.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: #f1f1f1;
}

/* 当前划过的表格的行的颜色 */
.table-striped>tbody>tr:hover {
    background-color: #e80027;
    color: #ffffff;
}

要注意CSS选择器的使用,很多人写table表格不些tbody标签,浏览器默认加上了tbody后就使得CSS样式不生效,所以建议写表格还是要加上thead和tbody标签。


后记

下篇我们才探讨如下实现响应式导航栏,这里也提供这一次博文所用到的源码。

http://download.csdn.net/detail/maxwell_nc/8727873

为了防止有些人不知道怎么用,我还不厌其烦的讲解下,源码部分不带jquery和bootstrap的js和css文件,所以要自己下,另外要吧程序打包成web应用,使用tomcat或者nginx之类的服务器启动服务器后在访问。

除了博文所写之外,我还更新了如何制作BOX的源码:

我这里写的Bootstrap技术都是实际开发中非常常用的,就比如马上要讲解的导航栏基本大部分的管理系统都用到,而这次提供源码中的“Box”(非bootstrap提供的pannel),你可以看到github上面各种的bootstrap模板都有类似的实现。

不过我这里的设计的Bootstrap网站都是前端的,包括各种数据都是写死的,这里我只是为了演示Bootstrap而这样做,或许以后会讲解如何利用Bootstrap结合后端做一个完整的项目。

时间: 2024-07-30 23:46:32

基于Bootstrap3制作响应式布局网站(二)的相关文章

基于Bootstrap3制作响应式布局网站(一)

前言 原创文章,欢迎转载,请保留出处. 有任何错误.疑问或者建议,欢迎指出. 我的邮箱:[email protected] 现在的上网设备十分多,每种设备的分辨率都不一样,传统的网站开发需要花很大功夫才能实现不同分辨率下兼容布局,而Bootstrap的出现使得网站开发更加简单快捷.Bootstrap是Twitter推出的一个用于前端开发的开源工具包,其中的一个特性就是支持响应式布局. 何为响应式布局 我们可以查阅百度百科得到比较权威的解析: 响应式布局是Ethan Marcotte在2010年5

自适应屏幕的jQuery响应式布局网站特效代码

jQuery响应式图片九宫格布局点击图片查看大图效果代码 jquery响应式布局_宽屏响应式焦点图片动画轮播代码 css3绘图制作css3响应式组织架构图形代码 jQuery css3图片翻转响应式布局翻转图片筛选器代码 jquery html5响应式幻灯片插件网站响应式全屏幻灯片轮播代码 jQuery响应式焦点图插件制作响应式全屏焦点图切换代码 jQuery html5全屏响应式幻灯片制作触屏手机幻灯片代码 jQuery图片响应式布局点击弹出图片响应式幻灯片代码 jquery 3d响应式幻灯片

响应式布局(二)—— CSS3 Media Query

响应式布局有三种实现方式: CSS3 Media Query 原生 JS 代码 第三方开源框架(最常见的有 bootstrap) CSS3 -- Media Query 1. 媒体查询实现方式 方式一:styleSheet样式表中的写法: 如:<style>标签中使用@media <style> @media screen and (min-width: 480px) { body{background: blue;} } </style> 方式二:<link&g

如何实现响应式布局?

响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本.这个概念是为解决移动互联网浏览而诞生的. 响应式布局可以为不同终端的用户提供更加舒适的界面和更好的用户体验,而且随着目前大屏幕移动设备的普及,用“大势所趋”来形容也不为过.随着越来越多的设计师采用这个技术,我们不仅看到很多的创新,还看到了一些成形的模式. 优点:面对不同分辨率设备灵活性强能够快捷解决多设备显示适应问题缺点:兼容各种设备工作量大,效率

网页响应式布局

如果我们写了个网页想让它在不同屏幕的分辨率.清晰度.屏幕的显示方式(横屏.竖屏)上正常的显示,就需要一种弹性栅格式布局,不同尺寸下弹性适应,响应式布局能达到这个要求. 一:先来说说它的优缺点 优点: 面对不同分辨率设备灵活性强 能够快捷解决多设备显示适应问题 缺点: 兼容各种设备工作量大,效率低下 代码累赘,会出现隐藏无用的元素,加载时间加长 其实这是一种折衷性质的设计解决方案,多方面因素影响而达不到最佳效果 一定程度上改变了网站原有的布局结构,会出现用户混淆的情况 二:接着说说应该去怎么设计响

响应式布局这件小事

讲到响应式布局, 相信大家都有一定的了解,响应式布局是今年很流行的一个设计理念,随着移动互联网的盛行,为解决如今各式各样的浏览器分辨率以及不同移动设备的显示效果, 设计师提出了响应式布局的设计方案.今天就和大家来讲讲响应式布局这件小事,包含什么是响应式布局.响应式布局的优点和缺点以及响应式布局该怎么设计(通 过CSS3 Media Query实现响应布局). 一.什么是响应式布局? 响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端—

一个菜鸟所喜欢用的响应式布局,操作方便简单、时尚简约,适合新手!(一个Dreamweaver cs6生成响应式布局)

前端开发并不是一个容易的工作,不仅需要掌握HTML.CSS和JavaScript,针对不同的浏览器版本和平台,还需要了解如何设计出跨平台的网站.如今随着响应式设计的流行,前端开发变得越来越困难,且花费的时间更长. 使用前端框架,有如下好处: 跨浏览器.这一点已被证实. 一致性.UI组件,如导航.按钮.标签.表单.下拉框.表格……,在设计上保持风格一致. 快速开发.你可以快速.容易地构建布局.这些框架都配有详细的说明文档. 响应式.所有CSS组件及JavaScript插件可以很好地从桌面过渡到移动

关于响应式布局的个人见解

响应式布局,就是一个网站可以兼容多类型终端,但不是需要为每一个终端做一个特定的网页版本.响应式布局可以为不同终端的用户提供更舒适的界面和用户体验,目前越来越多的大屏幕移动设备的出现,响应式也随之成为开发人员广泛使用的WEB技术. 优点: 面对不同分辨率设备灵活性强 能够快捷解决多设备显示适应问题 缺点: 兼容各种设备工作量大,效率低下 代码累赘,会出现隐藏且无用的元素,加载时间会加长 其实这是一种折中性质的设计解决方案,受多方面因素影响而达不到最佳效果 在一定程度上改变了网站原有的布局结构,会有

响应式布局和移动端开发

响应式布局 l 响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容 多个终端,而不是为每个终端做一个特定的版本.这个概念是为解决移动互联网浏览而诞生的. l 响应式布局可以为不同终端的用户提供更加舒适的界面和更好的用户体验,而且随着目前大屏幕移 动设备的普及,越来越多的设计师采用这个技术. l 一个典型的响应式布局网站:http://www.16ketang.com/ l 试着逐渐缩小该页面的窗口,看看网页有什么变化 l 由于响应式布局要针对