各种flex布局,拿来即用用过的都说好
开发过程中,很多布局,用antd的栅格还是不灵活,flex弹性布局会更好用
Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
注意,设为 Flex 布局以后,子元素的float、clear和vertical-align属性将失效。


容器属性
- flex-direction 排列方向
- flex-wrap 排不下,如何换行
- flex-flow 1和2的简写
- justify-content 主轴对齐
- align-item 交叉轴对齐
- align-content 多轴线对齐
项目属性
- order 数值越小,越靠前
- flex-grow 项目放大
- flex-shrink 项目缩小
- flex-basis 定宽或定高(同事说他面试都会问一个问题,两列,一列定宽,但是不能用width定义,另一列自适应,怎么写,就用这个属性)
- flex 2/3/4的简写
- align-self 单个项目与其他项目不一样的排列方式,下次写代码可以试试这个

- 左边块 div 左右布局,姓名职位上下布局,定义line-height
- 右边用下面的样式 col_center_middle
- 代码在文章末尾
以下为拿来即用公用flex类
.display-none {
display: none !important;
}
.visibility-hidden {
visibility: hidden;
}
.flex-top {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-align-items: flex-start;
-ms-align-items: flex-start;
align-items: flex-start;
}
.center {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: center;
-ms-justify-content: center;
justify-content: center;
}
.col-middle {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
flex-direction: column;
align-items: center;
}
.col-center-middle {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
flex-direction: column;
-webkit-justify-content: center;
-ms-justify-content: center;
justify-content: center;
align-items: center;
}
.center-middle {
display: -webkit-flex;
display: -ms-flexbox;
display: flex !important;
-webkit-align-items: center;
-ms-align-items: center;
align-items: center;
-webkit-justify-content: center;
-ms-justify-content: center;
justify-content: center;
}
.space-between {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;
}
.col-space-between {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;
flex-direction: column;
}
.space-around {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: space-around;
-ms-justify-content: space-around;
justify-content: space-around;
}
.right {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: flex-end !important;
-ms-justify-content: flex-end !important;
justify-content: flex-end !important;
}
.flex-wrap {
flex-wrap: wrap;
display: flex;
}
.cursor-pointer {
cursor: pointer;
}
.common-shadow {
box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.07);
}
.str-ellipsis{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.str-ellpsis_2, .str-ellpsis_3 {
display: -webkit-box;
-webkit-box-orient: vertical!important;
white-space: pre-wrap;
word-wrap: break-word;
overflow: hidden;
text-overflow: ellipsis;
}
.str-ellpsis-2 {
-webkit-line-clamp: 2; /*显示行数*/
}
.str-ellpsis-3 {
-webkit-line-clamp: 3; /*显示行数*/
}
.middle {
display: -webkit-flex;
display: -ms-flexbox;
display: flex!important;
-webkit-align-items: center;
-ms-align-items: center;
align-items: center;
}

代码如下:
<div class="avatar-wrapper">
<img :src="Avatar" class="user-avatar">
<div class="user">
<div class="name">姓名</div>
<div class="title" style="font-size:12px">职位</div>
</div>
</div>
.avatar-wrapper {
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-align-items: flex-start;
-ms-align-items: flex-start;
align-items: flex-start;
margin-top: 12px;
position: relative;
.user-avatar {
cursor: pointer;
width: 35px;
height: 35px;
border-radius: 10px;
}
}
.user {
line-height: 40px;
height: 40px;
color: #fff;
padding-left: 6px;
.name {
font-size: 14px;
line-height: 20px;
height: 20px;
font-weight: 400;
color: rgba(255, 255, 255, 0.85);
}
.title {
font-size: 12px;
line-height: 17px;
height: 17px;
font-weight: 400;
color: rgba(255, 255, 255, 0.85);
}
}
阮一峰 Flex 布局教程:语法篇
http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html?utm_source=tuicool
各种flex布局,拿来即用用过的都说好的更多相关文章
- FreeMusic项目优化(一)——flex布局学习记录
参考博客:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html flex布局是w3c于09年提出的,用于简便,整洁,响应式地解决布局问题的手 ...
- es6 Object.assign ECMAScript 6 笔记(六) ECMAScript 6 笔记(一) react入门——慕课网笔记 jquery中动态新增的元素节点无法触发事件解决办法 响应式图像 弹窗细节 微信浏览器——返回操作 Float 的那些事 Flex布局 HTML5 data-* 自定义属性 参数传递的四种形式
es6 Object.assign 目录 一.基本用法 二.用途 1. 为对象添加属性 2. 为对象添加方法 3. 克隆对象 4. 合并多个对象 5. 为属性指定默认值 三.浏览器支持 ES6 O ...
- Flex 布局教程:语法篇
作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...
- Flex 布局教程:实例篇
该教程整理自 阮一峰Flexible教程 今天介绍常见布局的Flex写法.你会看到,不管是什么布局,Flex往往都可以几行命令搞定. 我的主要参考资料是Landon Schropp的文章和Solved ...
- 在移动端中的flex布局
flex布局介绍: flex布局很灵活, 这种布局我们也可以称之为弹性布局, 弹性布局的主要优势就是元素的宽或者高会自动补全; flex布局实例: 比如有两个div,一个div的宽度为100px, ...
- css flex布局
关于flex布局的一些简单用法 效果(下图) 实现代码: <!--html--> <div class="wrap"> <div class=&quo ...
- FLEX布局的一些问题和解决方法
前言 露珠最近研究了一下flex的布局方式,发现项w3c推出的这套布局解决方案对于日益复杂的前端开发布局来说是确实是一利器,并且在不同的屏幕上实现了真正的响应式布局:不再单纯地依赖百分比和float的 ...
- CSS之flex布局
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- flex布局示例
来自:授权地址 作者:水牛01248 几个横排元素在竖直方向上居中 display: flex; flex-direction: row;//横向排列 align-items: center;//垂直 ...
- 【转】Flex 布局语法教程
网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中 ...
随机推荐
- nrm工具
nrm 工具 nrm(npm registry manager)是npm镜像源管理工具.可快速帮助查看.切换.管理npm镜像源. 安装 npm install -g nrm 查看 nrm ls 切换 ...
- zabbix 主动模式下报文分析
获取监控项列表 客户端发起请求 3次握手之后,请求监控项列表: {"request":"active checks","host":&quo ...
- Linux 命令:grub2-mkconfig
检索这个命令的,肯定都知道 grub 是 bootloader 程序,用于引导系统启动.配置文件是 grub.conf,现在一般的 grub 版本是grub2. 当机器上安装有多个内核.或者多个操作系 ...
- 2021-7-7 VUE动态样式
Vue的动态样式实例1 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> & ...
- golang技术降本增效的手段
最近一年各大中小厂都在搞"优化",说到优化,目的还是"降本增效",降低成本,增加效益(效率). 技术层面,也有一些降本增效的常规操作. 比如池化.io缓冲区技术 ...
- node:spawn npm ENOENT
错误背景 封装脚手架时报错 错误原因 windows系统原因 解决方案 const createProjectAction = async (project) => { console.log( ...
- 你真的知道吗?catch、finally和return哪个先执行
我的一位朋友前阵子遇到一个问题,问题的核心就是try--catch--finally中catch和finally代码块到底哪个先执.这个问题看起来很简单,当然是"catch先执行.final ...
- 谈谈 Kafka 的幂等性 Producer
使用消息队列,我们肯定希望不丢消息,也就是消息队列组件,需要保证消息的可靠交付.消息交付的可靠性保障,有以下三种承诺: 最多一次(at most once):消息可能会丢失,但绝不会被重复发送. 至少 ...
- DC-SDK 开发文档
https://resource.dvgis.cn/dc-docs/v2.x/zh/introduction/#%E5%BA%94%E7%94%A8%E9%85%8D%E7%BD%AE
- papricice
2023-07-14 题目 题目传送门 题目大意 给定一个 \(n\) 个点的树,这 \(n\) 个点编号为 \(1\) 到 \(n\). 现在要选择断掉两条边,会形成三个连通块,假设这三个连通块内的 ...