响应式布局+Bootstrap
一、响应式布局
-
就是使用媒体查询针对不同宽度的设备进行布局和样式的设置,从而适配不同设备的目的
1.1 响应式布局容器
-
响应式需要一个父级作为布局容器,来配合子级元素来实现变化效果
-
原理就是在不同屏幕下,通过媒体查询来改变这个布局容器的大小,在改变里面子元素的排列方式和大小,从而实现不同屏幕下,看到不同的页面布局和样式变化
屏幕 | 宽度 |
---|---|
超小屏幕(小于768px) | 100% |
小屏幕(大于768小于992px) | 750px |
中等屏幕(大于992px小于1200px) | 970px |
大屏幕(大于等于1200px) | 1170px |
二、Bootstrap
2.1 Bootstrap简介
-
Bootstrap来自Twitter,是目前最受欢迎的前端框架,是基于HTML、 CSS和JAVASCRIPT的
-
可以直接套用官网上的预写好的样式放在自己的代码上面以使用
-
优点
-
标准化的html+css编码规范
-
提供了一套简洁、直观、强悍的组件
-
有自己的生态圈,不断的更新迭代
-
让开发更简单,提高了开发的效率
-
-
版本号代表:
-
2.x.x:停止维护,兼容性好,代码不够简介,功能不够完善
-
3.x.x:目前使用最多,稳定,放弃了IE6-IE7。对IE8支持但是页面效果不好,偏向于开发响应式布局、移动设备优先的WEB项目
-
4.X.X:最新版,目前还不是很流行
-
2.2 Bootstrap使用
(1)使用四部曲
-
创建文件加结构 2. 创建html股价结构 3. 引入相关样式文件。4. 书写内容
-
-
基本代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>Bootstrap 101 Template</title>
<!-- Bootstrap -->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询(media queries)功能 -->
<!-- 警告:通过 file:// 协议(就是直接将 html 页面拖拽到浏览器中)访问页面时 Respond.js 不起作用 -->
<!--[if lt IE 9]>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/html5shiv.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dest/respond.min.js"></script>
<![endif]-->
</head>
<body>
<h1>你好,世界!</h1>
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.min.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js"></script>
</body>
</html>
(2)书写内容
-
直接拿Bootstrap预先定义好的样式来使用
-
修改Bootstrap原来的样式,注意权重问题
-
学号Bootstrap的关键在于知道它定义了哪些样式,以及这些样式能实现什么样的效果
2.3 布局容器
-
Bootstrap需要为页面内容和栅格系统包裹一个.container容器,它提供了两个作词用处的类
(1)container类
-
响应式布局的容器 固定宽度 左右会有15pxpadding
-
大屏(>=1200px)宽度定为1170px
-
中屏(>=992px)宽度定位970px
-
小屏(>=768px)宽度定为750px
-
超小屏(100%)
(2)container-fluid类
-
流式布局容器 百分百宽度
-
占据全部视口(viewport)的容器
-
适合于制作移动端页面开发
2.4 栅格系统
(1)栅格系统介绍
-
将页面布局划分为等宽的列,然后通过列数的定义来模块化页面布局
-
系统自动分为最多12列
(2)栅格系统使用方法
-
栅格系统用于通过一系列的行(row)与列(column)的组合来创建页面布局,你的内容就可以放入这些创建好的布局中
-
col必须嵌套在row内,row必须嵌套在container内
-
row可以去除父容器的15pxpadding的作用
-
xs,sm,md,lg
-
越大的就会也有小的特性
-
比如我设置sm的col但是lg也会有这些特性
-
-
设置col之后会有左右15px的padding
-
可以同时这是多个col
-
列嵌套:
-
在col中可以嵌套col,前者col会当作row使用
-
-
列偏移:
-
col-md-offset: 可以向右侧偏移。实际上是通过*选择器为当前元素增加了左侧的边距(margin)
-
超过的话后面会调到后面
-
可以使用这个来使元素居中
-
-
列排序:
-
col-md-push/pull-份数: 可以实现向左/右偏移, 但是占原有位置,也可以覆盖其它位置的
-
(3)响应式工具
-
为了加快对移动设备友好的页面开发工作,利用媒体查询功能,并使用这些工具类可以方便的针对不同设备展示或隐藏页面内容
-
visible-xs, visible-sm, visible-md, visible-lg则相反
-
隐藏的话原有位置会消失,后续位置会顶替上来
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。