Bootstrap CSS 概览

在这一章中,我们将讲解 Bootstrap 底层结构的关键部分,包括我们让 web 开发变得更好、更快、更强壮的最佳实践。

HTML 5 文档类型(Doctype)

Bootstrap 使用了一些 HTML5 元素和 CSS 属性。为了让这些正常工作,您需要使用 HTML5 文档类型(Doctype)。

因此,请在使用 Bootstrap 项目的开头包含下面的代码段。

....

如果在 Bootstrap 创建的网页开头不使用 HTML5 的文档类型(Doctype),您可能会面临一些浏览器显示不一致的问题,甚至可能面临一些特定情境下的不一致,以致于您的代码不能通过 W3C 标准的验证。

移动设备优先

移动设备优先是 Bootstrap 3 的最显著的变化。

在之前的 Bootstrap 版本中(直到 2.x),您需要手动引用另一个 CSS,才能让整个项目友好的支持移动设备。

现在不一样了,Bootstrap 3 默认的 CSS 本身就对移动设备友好支持。

Bootstrap 3 的设计目标是移动设备优先,然后才是桌面设备。这实际上是一个非常及时的转变,因为现在越来越多的用户使用移动设备。

为了让 Bootstrap 开发的网站对移动设备友好,确保适当的绘制和触屏缩放,需要在网页的 head 之中添加 viewport meta 标签,如下所示:

width 属性控制设备的宽度。假设您的网站将被带有不同屏幕分辨率的设备浏览,那么将它设置为 device-width 可以确保它能正确呈现在不同设备上。

initial-scale=1.0 确保网页加载时,以 1:1 的比例呈现,不会有任何的缩放。

在移动设备浏览器上,通过为 viewport meta 标签添加 user-scalable=no 可以禁用其缩放(zooming)功能。

通常情况下,maximum-scale=1.0 与 user-scalable=no 一起使用。这样禁用缩放功能后,用户只能滚动屏幕,就能让您的网站看上去更像原生应用的感觉。

注意,这种方式我们并不推荐所有网站使用,还是要看您自己的情况而定!

响应式图像

通过添加 img-responsive class 可以让 Bootstrap 3 中的图像对响应式布局的支持更友好。

接下来让我们看下这个 class 包含了哪些 css 属性。

在下面的代码中,可以看到img-responsive class 为图像赋予了 max-width: 100%; 和 height: auto; 属性,可以让图像按比例缩放,不超过其父元素的尺寸。

.img-responsive {

display: block;

height: auto;

max-width: 100%;

}

这表明相关的图像呈现为 block。当您把元素的 display 属性设置为 block,以块级元素显示。

设置 height:auto,相关元素的高度取决于浏览器。

设置 max-width 为 100% 会重写任何通过 width 属性指定的宽度。这让图片对响应式布局的支持更友好。

如果需要让使用了 .img-responsive 类的图片水平居中,请使用 .center-block 类,不要用 .text-center。

全局显示、排版和链接

基本的全局显示

Bootstrap 3 使用 body {margin: 0;} 来移除 body 的边距。

请看下面有关 body 的设置:

body {

font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;

font-size: 14px;

line-height: 1.428571429;

color: #333333;

background-color: #ffffff;

}

第一条规则设置 body 的默认字体样式为 "Helvetica Neue", Helvetica, Arial, sans-serif。

第二条规则设置文本的默认字体大小为 14 像素。

第三条规则设置默认的行高度为 1.428571429。

第四条规则设置默认的文本颜色为 #333333。

最后一条规则设置默认的背景颜色为白色。

排版

使用 @font-family-base、 @font-size-base 和 @line-height-base 属性作为排版样式。

链接样式

通过属性 @link-color 设置全局链接的颜色。

对于链接的默认样式,如下设置:

a:hover,

a:focus {

color: #2a6496;

text-decoration: underline;

}

a:focus {

outline: thin dotted #333;

outline: 5px auto -webkit-focus-ring-color;

outline-offset: -2px;

}

所以,当鼠标悬停在链接上,或者点击过的链接,颜色会被设置为 #2a6496。同时,会呈现一条下划线。

除此之外,点击过的链接,会呈现一个颜色码为 #333 的细的虚线轮廓。另一条规则是设置轮廓为 5 像素宽,且对于基于 webkit 浏览器有一个 -webkit-focus-ring-color 的浏览器扩展。轮廓偏移设置为 -2 像素。

以上所有这些样式都可以在 scaffolding.less 中找到。

避免跨浏览器的不一致

Bootstrap 使用 Normalize 来建立跨浏览器的一致性。

Normalize.css 是一个很小的 CSS 文件,在 HTML 元素的默认样式中提供了更好的跨浏览器一致性。

容器(Container)

...

Bootstrap 3 的 container class 用于包裹页面上的内容。让我们一起来看看 bootstrap.css 文件中的这个 .container class。

.container {

padding-right: 15px;

padding-left: 15px;

margin-right: auto;

margin-left: auto;

}

通过上面的代码,把 container 的左右外边距(margin-right、margin-left)交由浏览器决定。

请注意,由于内边距(padding)是固定宽度,默认情况下容器是不可嵌套的。

.container:before,

.container:after {

display: table;

content: " ";

}

这会产生伪元素。设置 display 为 table,会创建一个匿名的 table-cell 和一个新的块格式化上下文。:before 伪元素防止上边距崩塌,:after 伪元素清除浮动。

如果 conteneditable 属性出现在 HTML 中,由于一些 Opera bug,围绕上述元素创建一个空格。这可以通过使用 content: " " 来修复。

.container:after {

clear: both;

}

它创建了一个伪元素,并确保了所有的容器包含所有的浮动元素。

Bootstrap 3 CSS 有一个申请响应的媒体查询,在不同的媒体查询阈值范围内都为 container 设置了max-width,用以匹配网格系统。

@media (min-width: 768px) {

.container {

width: 750px;

}

Bootstrap 浏览器/设备支持

Bootstrap 可以在最新的桌面系统和移动端浏览器中很好的工作。

旧的浏览器可能无法很好的支持。

下表为 Bootstrap 支持最新版本的浏览器和平台:

Chrome

Firefox

IE

Opera

Safari

Android

YES

YES

不适用

不适用

不适用

iOS

YES

不适用

不适用

不适用

YES

Mac OS X

YES

YES

不适用

YES

YES

Windows

YES

YES

YES*

YES

不适用

* Bootstrap 支持 Internet Explorer 8 及更高版本的 IE 浏览器。

bootsrap 外边距_Bootstrap CSS 概览相关推荐

  1. bootsrap 外边距_Bootstrap 网格系统布局详解

    Bootstrap 提供了一套响应式.移动设备优先的流式网格系统(Grid System),随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列. 一.什么是网格(Grid)? 在平 ...

  2. html外边距合并,CSS 外边距合并问题

    小鸡炖蘑菇炖小鸡 你好:外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者.外边距合并外边距合并(叠加)是一个相当简单的概念. ...

  3. html外边距图,css margin外边距详细图解分析

    CSS margin简介 css margin属性设置HTML元素的外边距,外边距指的是元素边框到父元素或者同级元素之间的那一部分. 该属性可以有1到4个值. 如果提供全部四个参数值,将按上.右.下. ...

  4. Css内边距与外边距

    Css内边距与外边距 Css内边距 Css外边距margin Css外边距margin 设置外边距最简单的方法就是margin属性.margin属性接受任何长度单位,可以是像素,英寸,毫米或em ma ...

  5. html定义盒子距离顶底端像素,css - 盒子内外边距

    css - 边距 元素内边距 内边距是指元素包含的内容离元素边框之间的间距,内边距不能设负值.内边距(padding).(边框)border都会撑大盒子,在浏览器中显示的元素的尺寸可能包含了盒子的pa ...

  6. CSS边框、边距、轮廓(边框宽度/颜色/各边/简写属性/圆角边框/内外边距/高度宽度/框模型/轮廓宽度/颜色/属性/偏移)——万字长文|一文搞懂

    目录 CSS边框 CSS 边框属性 CSS 边框样式 实例 CSS 边框宽度 实例 特定边的宽度 实例 CSS 边框颜色 实例 特定边框的颜色 实例 HEX 值 实例 RGB 值 实例 HSL 值 实 ...

  7. css怎样清除外边距,CSS 外边距

    CSS 外边距 围绕在元素边框的空白区域是外边距.设置外边距会在元素外创建额外的"空白". 设置外边距的最简单的方法就是使用 margin 属性,这个属性接受任何长度单位.百分数值 ...

  8. CSS外边距margin

    CSS外边距margin CSS margin(外边距)属性定义元素周围的空间. margin margin 清除周围的(外边框)元素区域.margin 没有背景颜色,是完全透明的. margin 可 ...

  9. html外边距有哪些,css外边距是什么?css外边距属性的介绍

    在学习css的时候,会css外边距这一概念,所以,css外边距是什么呢?边框以外就是外边距,外边距默认是透明的,因此不会遮挡其后的任何元素,接下来本篇文章将来给大家介绍关于css外边距属性的相关内容. ...

最新文章

  1. 阿里云证书 | 套路太深,还是我打开姿势不对?
  2. android studio项目总结,android studio 3.0 升级 项目遇到的问题及更改思路(问题小结)...
  3. SaaS新模式:业务、财务与支付无缝对接
  4. Spring在Java Filter注入Bean为Null的问题解决
  5. 类与对象和对应方法、封装
  6. 从里面学到的关于过去的经验 中篇
  7. 数据库设计时设计标识字段的一些思考
  8. 第五和第六单元练习题
  9. 服务器控件与Html控件属性值的解释差异
  10. GitHub贡献统计
  11. 洛谷:P5520 [yLOI2019] 青原樱(数学,普及/提高-)
  12. java计算机毕业设计高校防疫物资管理系统MyBatis+系统+LW文档+源码+调试部署
  13. 《机器学习 公式推导与代码实现》随书PPT示例
  14. 设计100倍同向放大电路
  15. PostgreSQL集群篇——PostgreSQL的配置文件解析
  16. 剑走偏锋——老女人教你另类情人节攻略
  17. Android工作经验6年,Android事件分发机制收藏这一篇就够了,分享PDF高清版
  18. 轩逸车联网功能怎么用_车联网有什么功能
  19. 神经网络阈值是什么意思,神经网络阈值如何确定
  20. NoteExpress使用中的一些问题

热门文章

  1. exif linux php扩展_LNMP环境为PHP添加exif扩展
  2. java 函数签名,Java签名getAlgorithm()方法
  3. mac mysql 安装 简书_在Mac系统上配置MySQL以及Squel Pro
  4. python基础入门(3)之字符串
  5. 罗盘时钟编码代码_安全研究 | 利用macOS Dock实现代码的持久化执行
  6. 同步数据流语言代码生成工具的研究进展
  7. java 文件与base64_java之文件与base64字符之间的相互转换
  8. opencv之namedWindow,imshow出现两个窗口
  9. 单元测试——Winfrom
  10. Java学习--泛型