bootstrap经典网页布局(bootstrap页面设计)
本篇文章给大家谈谈bootstrap经典网页布局,以及bootstrap页面设计对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
布局&栅格
先聊聊布局方面的知识,先列据一个实现三栏水平布局(左右定宽,中间自适应)案列,目前有圣杯布局、双飞翼布局、Flex布局和绝对定位布局的几种经典布局。
相同点:
差异点:
DOM节点结构:
双飞翼布局比圣杯布局多使用了一个div,少用大致4个css属性,比圣杯布局思路更直接和间接一点。
Flex 是 Flexible Box 的缩写,意为"弹性布局",用来盒状模型提供最大的灵活性。任何一个容器都可以指定为 Flex 布局, Flex 布局将成为现代浏览器的首选方案。
绝对定位 position: absolute 使元素的位置与文档流无关,因此不占据空间。PS:这一点与相对定位不同,相对定位实际上被看作普通流定位模型的一部分,因为元素的位置相对于它在普通流中的位置。
栅格
以规则的网格阵列来指导和规范网页中的版面布局以及信息分布,通俗一点的就是在一个特定区域内划分出有规律的格子,并依靠这些格子进行有规律的版面布局。
栅格布局的作用
栅格布局的使用
现大多数UI框架设计上都会设计栅格化系统,比如 bootstrap(jquery) 、 element(vue) 、 antD(react) 等。
Bootstrap 的栅格化系统采用将页面布局分为12列,再根据页面宽度采用预定义类控制模块占用宽度比例(宽度百分比)的思想,实现响应式布局。
Bootstrap将屏幕大小分为4类,主要关键点是媒体查询 @media 。
官网中对Layout 布局的定义是: 通过基础的 24 分栏,迅速简便地创建布局.Element是基于 vue.js 开发的UI框架,其设计的栅格系统也与 Bootstrap 类似,可选 flex 方式满足现代浏览器,组件开发的目的都是为了解决基本布局定位的问题。
主要组件为 Row 与 Col , 其中 Row 为行布局容器, Col 为列布局容器.
参照了 Bootstrap 的 响应式设计,预设了五个响应尺寸:
antD 是Ant Design 团队基于 React 开发的一套企业级后台UI框架,其栅格整个设计建议区域按照 24 等分的原则进行划分
支持 Flex 布局,允许子元素在父节点内的水平对齐方式 - 居左、居中、居右、等宽排列、分散排列。子元素与子元素之间,支持顶部对齐、垂直居中对齐、底部对齐的方式。同时,支持使用 order 来定义元素的排列顺序
参照 Bootstrap 的 响应式设计,预设六个响应尺寸:
怎么实现一个基本栅格化?
通常一个基本的栅格化系统包括:
为了给整个栅格系统设置宽度,我们需要一个容器。容器的宽度通常为100%,但你可能希望为更大的显示器设置最大宽度 max-width 。
行元素用于防止里面的列( column )溢出到其他的行。通常会使用 clearfix 来清除浮动,因为我们是通过浮动来制作栅格系统的。
列元素是栅格系统的核心,也是最复杂的一部分。因为列的定位可以有很多实现方式,同时还需要考虑它的宽度以及响应式设计等因素。
列的位置
Floats 、 inline-blocks 、 display-table 、 display-flex 他们都可以实现栅格布局中,列的定位。先选取使用 float ,如果列都是空的,浮动的列都会贴在彼此的顶部。为了避免这种情况:
列的宽度
由于容器总宽度是100%,我们想要6列,所以每列宽度为:100 / 6 = 16.66
这里我们把一行分成六列,通过简单的计算,还可以定义列的多种宽度。
列的间隙 (Column Gutters)
由于列的宽度单位是响应式的百分比(%),我们给列元素的间距是固定单位的 padding(px单位) ,为了避免复杂的计算,我们规定所有的盒子模型为 border-box 类型。
为了适配更多分辨率的布局,我们只需改变列的宽度。
比如当屏幕宽度小于1000px时,为了布局更简洁,我们使用两倍列的宽度,一行六列变为了一行三列。
当屏幕宽度比1000px还小时
Bootstrap 栅格布局的使用
bootstrap 提供了一套非常强大的系统 —— 响应式、移动设备优先的栅格系统。它可以随着设备或者视口的尺寸大小的增加而适当的扩展列数(最多到12列)。
在使用栅格参数时,需要注意:例如当定义了 .col-md-1 时,代表宽度大于 992px 时,这一列将会占用 1/12 的宽度,如果没有定义更大的类 .col-lg ,那当显示器大于 1200px 时,排列的宽度仍会按照 col-md-1 来分配。但是,如果没有定义更小的类,当前元素将会失去栅格的样式,变成一个普通的div(没有浮动、也没有宽度,默认占满一整行)。
由于 bootstrap 3 的栅格布局是通过浮动来实现的,所以当我们一行中有一块未占满一整行,但又需要进行偏移或者居中的元素,就没法通过 marin: 0 auto 或者 text-align: center ,这时就可以使用 列偏移 来让该列进行偏移。
要进行列偏移,需要在对应的列中添加 col-md-offset-x
pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="html" cid="n17" mdtype="fences" style="box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); position: relative !important; border: 1px solid rgb(231, 234, 237); border-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; color: rgb(51, 51, 51); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;"div class="col-md-8 col-md-offset-2"我占了3列/div/pre
偏移完成后,我们会发现, bootstrap 偏移的原理是通过 margin-left 来实现的,所以 col-md-8 后面的与纳素,也会跟着一起被推开。当偏移量加元素本身的宽度大于12列时,会导致后面的元素进行换行。另外,由于偏移是固定使用 margin-left 属性,所以偏移只能向右偏移。
列排序,就是可以将列的 显示顺序 进行替换。但列排序和列偏移有点不同,就是列偏移是通过 margin-left 来实现的,但是列排序却是通过 相对定位 来实现的。所以列排序它不会影响到周围元素的布局(会导致元素之间的重叠)。
要实现列排序,只需要通过 col-md-pull 或者 col-md-push 来进行左偏移和右偏移。
pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="html" cid="n22" mdtype="fences" style="box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); position: relative !important; border: 1px solid rgb(231, 234, 237); border-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; color: rgb(51, 51, 51); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;"div class="row"
div class="col-md-9 col-md-push-3"input type="text" placeholder="username"/div
div class="col-md-3 col-md-pull-9"input type="password" placeholder="password"/div
/div/pre
怎么用bootstrap做一套网站
方法/步骤
何为Bootstrap? 简洁的、直观的、超牛的、以移动设备优先的前端开发框架,让web开发更迅速、简单。他是Twitter推出的html/css的前端框架, 现在的网页设计越来越多的平面化, 所以, 也就出现了一些平台来做平面化的样式来供我们来使用. 因为这款框架是一个开源的框架, 所以现在很多人都在使用该框架. 下载下来的框架目录结构如图:
怎
么去使用一个开源的框架或者一段现成的源码? 首先你确定要保证你所需要的引用你都有, 还有你要保证运行的最小点. 就是需要3个外部文件, A,
B, C, 你就要找到这3个文件, 如果是你找到的一段代码, 你要确保他能够运行, 如果都没有办法运行, 放弃吧. 另找下一个. 一般情况下,
一个框架都会给你一个最基本的例子, 这个例子中使用了框架需要的外部文件和一些简单的说明, bootstrap也给出了一个简单的例子.
如图就是最基本的一个例子. 该例子说了一个很重要的, 也是很好的一个文件引用的方式, 就是css. 全部放在上面, 然后把js.
都放在页面的最下面, 这样能够更好的加载页面渲染. 建议你使用最基本的页面去修改你需要的页面, 而且要做到按照自己的需求来写代码. 不要复制,
粘贴.
Bootstrap中内置了一套响应式的, 移动优先的流式栅格系统, 随着不同的设备, 不同的平台. 或者窗口大小(viewport), 根据他们的不同系统会自动的分成12份. 也就是说, 栅格系统是通过一系列的行和列来组成我们需要的页面, 然后把你需要的内容放在这些的布局中.在使用栅格系统的时候, 需要注意的是: 需要在使用.row(行的意思)的外层使用 .container 为的是, 在赋值时给出合适的排列(aligment)和内补(padding).
举
个例子: 一行 其中包含3个内容 分别占屏幕的25%, 50%, 25%. 我们要在超小屏幕设备-手机上使用. 那么就要写成12的3, 6,
3. 具体代码看图片, 这里的效果图, 为了效果加上了一个well的class. 只是为了演示效果, 能够看清除.
为了有一个很好
的学习东西, 让你看一下表格的创建. 就是这么的简单, 只需要在table上,
填写一个class为.table的样式即可生成一个很好很实用的表格. 其实, 这些都是别人提前建立好的页面显示效果,
就是不用自己再去写一些简单的css效果. 多练. 多使用它就属于你.
在给出一个只有简单的带有导航栏的页面. 该页面, 理解透了, 这个东西你就算学会了, 剩下的就是用什么查一下文档就拿来用了,
bootstrap经典网页布局的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于bootstrap页面设计、bootstrap经典网页布局的信息别忘了在本站进行查找喔。