Bootstrap学习-CSS样式

在Bootstrap中使用了一些HTML5和CSS属性,所以我们在使用Bootstrap框架时需要使用HTML5的文档的类型,也就是在开头时添加下面的代码段:

<!DOCTYPE html>
<html>
....
</html>
否则可能在运行时会遇到浏览器显示不一致的问题。

我们使用Bootstrap框架的其中一个原因就是:移动设备优先。这也是Bootstrap3最显著的一个变化,在之前的 Bootstrap 版本中(直到 2.x),还需要手动引用另一个 CSS,才能让整个项目友好的支持移动设备。Bootstrap3 默认的 CSS 本身就对移动设备友好支持。

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

<meta name="viewport" content="width=device-width, initial-scale=1.0">

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

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

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

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

<meta name="viewport" content="width=device-width, 
                                     initial-scale=1.0, 
                                     maximum-scale=1.0, 
                                     user-scalable=no">

响应式图像也是Bootstrap框架的一大特点。

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

<img src="..." class="img-responsive" alt="响应式图像">
其中img-responsive class为:
.img-responsive {
  display: inline-block;
  height: auto;
  max-width: 100%;
}
从代码中可以看出,img-responsive为图像添加了max-width:100%和height:auto的属性,这样图像就可以按照比例进行缩放,但是不能超过其父元素的尺寸。

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;
}
可以使用使用 @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 元素的默认样式中提供了更好的跨浏览器一致性。同时,在我们使用div标签进行布局时,可以使用container class来包裹页面中的内容。

<div class="container">
  ...
</div>
关于container class可以在bootstrap.css文件中找到:

.container {
   padding-right: 15px;
   padding-left: 15px;
   margin-right: auto;
   margin-left: auto;
}
我们可以看出,container把左边距和右边距交给浏览器来决定。同时由于我们指定了padding,所以 默认情况下容器是不可嵌套的。

.container:before,
.container:after {
  display: table;
  content: " ";
}

这会产生伪元素。设置 display 为 table,会创建一个匿名的 table-cell 和一个新的块格式化上下文。:before 伪元素防止上边距崩塌,:after 伪元素清除浮动。如果 conteneditable 属性出现在 HTML 中,由于一些 Opera bug,围绕上述元素创建一个空格。这可以通过使用content: " " 来修复。

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

@media (min-width: 768px) {
   .container {
      width: 750px;
}















  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值