Flex布局和Bootstrap布局两者的比较
在Bootstrap中采用12栅格的布局,12份随意分配,但是不能解决5等分,7等分的问题。所以flex布局来协助。
bootstrap的布局方式
<div class="row">
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
<div class="col-md-8">.col-md-8</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
<div class="row">为父容器,class声明自己在容器中占据几个。
Flex的布局方式
声明的方式如下
.Grid {
display: flex;
}
.Grid-cell {
flex:;
text-align: center;
margin:10px;
}
在html代码中,添加css的引用
<div class="Grid">
<div class="Grid-cell">
<svg id="fillgauge2" width="100%" height="200" onclick="gauge2.update(NewValue());"></svg>
<label>CPU占有率</label>
</div>
<div class="Grid-cell"> <svg id="fillgauge3" width="100%" height="200" onclick="gauge3.update(NewValue());"></svg>
<label>CPU占有率</label>
</div>
<div class="Grid-cell"><svg id="fillgauge4" width="100%" height="200" onclick="gauge4.update(NewValue());"></svg>
<label>CPU占有率</label></div>
<div class="Grid-cell"><svg id="fillgauge5" width="100%" height="200" onclick="gauge5.update(NewValue());"></svg>
<label>CPU占有率</label></div>
<div class="Grid-cell"><svg id="fillgauge6" width="100%" height="200" onclick="gauge6.update(NewValue());"></svg>
<label>CPU占有率</label></div> </div>
<div class="Grid"> 中有5个层,<div class="Grid-cell">,这5个层flex=1,然后每个层占得比例为 1/(1+1+1+1+1)
Flex比Bootstrap的布局适应性更强,因为flex是基于灵活布局,而Bootstrap是自定义宽度布局,当删除元素时这些显得尤为明显。
Flex布局和Bootstrap两者相同的设计理念
1、内部的孩子节点无margin,元素之间的空隙用padding和border进行间隔,以及box-sizding:bording-box进行宽高的界定。
2、两者都完美适配手机。
但是flex 存在严重问题,一行放4个,但是不够4个有时候不能够自适应,也要求剩余1部分。
bootstrap自适应能力不如flex布局。
经过了很长时间。我们发现了 flex布局有很强的优越性,而bootstrap不行了。
1、abc a固定,c固定,b要进行自适应。使用flex:1
2、flex不受margin-left 和margin-right的影响。而bootstrap对这块支持的特别惨。
结合京东顶部的设计。

仿照京东我们自己也做了一个。

我们提供如下的代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="Content/bootstrap.min.css" rel="stylesheet" />
<script src="Scripts/jquery-3.4.1.min.js"></script>
<script src="Scripts/bootstrap.min.js"></script>
<link href="Reset.css" rel="stylesheet" />
<link href="Content/octicons.css" rel="stylesheet" /> <style>
#d1 {
height: 50px;
line-height: 50px;
background-color: aqua;
color: cadetblue;
display: flex;
} #d1 .left {
height: 50px;
line-height: 50px;
float: left;
padding-left: 10px;
} #d1 .center {
flex: 1;
margin-left: 20px;
margin-right: 20px;
height: 50px;
line-height: 50px;
} #d1 .right {
height: 50px;
line-height: 50px;
float: right;
padding-right: 10px;
}
</style>
</head>
<body>
<div id="d1">
<div class="left ">
扫码<i class="octicon octicon-alert"></i>
</div>
<div class="center">
<input id="Text1" type="text" class="form-control form-control-sm" style="display:inline;border-radius:20px;
padding-left: 20px;
" placeholder="请您输入......" />
</div> <div class="center" style="flex:2">
<input id="Text1" type="text" class="form-control form-control-sm" style="display:inline;border-radius:20px;
padding-left: 20px;
" placeholder="请您输入......" />
</div> <div class="right">
城市列表<i class="octicon octicon-bold"></i>
</div> </div> </body>
</html>
Flex布局和Bootstrap布局两者的比较的更多相关文章
- Bootstrap页面布局3 - BS布局以及流动布局
1. <h1 class='page-header'>布局<small> 使用bootstrap网格系统布局网页</small></h1> 得到如图所示 ...
- 测开之路一百零六:bootstrap布局
可以在html的head里面加一些说明 <meta http-equiv="X-UA-Compatible" content="IE=edge">& ...
- 前端入门24-响应式布局(BootStrap)
声明 本篇内容摘抄自以下两个来源: BootStrap中文网 感谢大佬们的分享. 正文-响应式布局(BootStrap) 这次想来讲讲一个前端开发框架:BootStrap BootStrap 目前已经 ...
- 实现bootstrap布局的input输入框中的图标点击功能
使用bootstrap布局可以在input的输入框中添加譬如登录名输入框中的一键清除图标和密码输入框中显示密码的小眼睛图标.如下图: 但是在将图标放入input输入框中,这些小图标是无法获得点击事件的 ...
- BootStrap布局案例
BootStrap布局 bootstrap 2.3版与3.0版的使用区别 http://www.weste.net/2013/8-20/93261.html 以一个博客系统的首页,来介绍如何布局 1, ...
- Bootstrap 布局
bootstrap提供的布局主要有两种,固定布局和流动布局. Bootstrap 固定布局 用法 <body> <div class="container"> ...
- Flex布局【弹性布局】学习
先让我们看看在原来的学习中遇到的问题 之前在软件工程的大作业中,自己从零开始学习如何开发一个网站,从页面,到后台,当然数据库是大二的必修课 在学习如何编写一个静态页面的时候,完全是自学,自己摸索,所以 ...
- flex布局 响应式布局
移动端页面开发流程 移动端页面布局 一.移动端app分类 1.Native App原生app手机应用程序 使用原生的语言开发的手机应用,Android系统用的是java,ios系统用的是objec ...
- 响应式布局与bootstrap框架
原文 网页布局方式 1.固定宽度布局:为网页设置一个固定的宽度,通常以px做为长度单位,常见于PC端网页. 2.流式布局:为网页设置一个相对的宽度,通常以百分比做为长度单位. 3.栅格化布局:将网页宽 ...
随机推荐
- MT【229】最小值函数
已知定义域为$R$的函数,$f(x),g(x)$满足:$f(x)+g(x)=e^{-x^2+1}$,则$min\{f(x),g(x)\}$的最大值为______ 解答:$min\{f(x),g(x)\ ...
- P3312 [SDOI2014]数表
啊啊啊我昨天怎么没写题解wwww 补昨日题解... 题目链接 : https://www.luogu.org/problemnew/show/P3312 也是莫反 我要把fft留到今天写 [和zyn小 ...
- python常见面试题(三)
问题1 到底什么是Python?你可以在回答中与其他技术进行对比(也鼓励这样做). 答案 下面是一些关键点: Python是一种解释型语言.这就是说,与C语言和C的衍生语言不同,Python代码在运行 ...
- Flash10 使用剪贴板得改变程序的写法了
昨天一个客户告诉我,在她的电脑上无法复制图片的链接地址. 一开始,我以为是她操作有误,因为在我们的系统里使用的是一种“双保险”的复制方法. javascript + flash 两种方法来进行复制. ...
- R语言画棒状图(bar chart)和误差棒(error bar)
假设我们现在有CC,CG,GG三种基因型及三种基因型对应的表型,我们现在想要画出不同的基因型对应表型的棒状图及误差棒.整个命令最重要的就是最后一句了,用arrows函数画误差棒.用到的R语言如下: d ...
- 开启 Hyper-v 后如何使用 Android Emulator?
如果开启了 Hyper-v 时,当需要使用 Android Studio 中 Android Emulator 时,系统会出现蓝屏代码错误. 使用下面的方法,则可以解决冲突. 首先,你需要确保已经开启 ...
- python在数据处理中常用的模块之matplotlib
<利用python进行数据分析>读书笔记--第八章 绘图和可视化 python 画子图(add_subplot & subplot)
- JSP+MySQL中文乱码
问题:JSP页面传输到MySQL数据库时,中文为乱码(数据库中存储乱码). 解决办法: 1.将所有的涉及到编码的都设置为 utf8(utf-8). 设置数据库编码:命令行执行:mysql> sh ...
- Vusial Studio连接不到源代码管理器Vss
我的VS突然链接不到我的源代码管理器了,重新注册一下就好了,regsvr32是注册命令,后面的填你自己的源代码路径 regsvr32 "E:\vss\ssscc.dll" regs ...
- centos7环境下安装mysql5.6-----解压安装包的方法
参考连接:https://blog.csdn.net/qq_17776287/article/details/53536761 linux下有很多服务,如何查看服务是否启动,以mysql为例子 使用命 ...