<template>
<div class="about">
<h3>flex相关的属性</h3>
<div class="parent">
<div class="son1"></div>
<div class="son2"></div>
<div class="son3"></div>
<div class="son4"></div>
</div>
<div class="parent1">
<div class="son1"></div>
<div class="son2"></div>
<div class="son3"></div>
</div>
<div class="parent3">
<div class="son1"></div>
<div class="son2"></div>
<div class="son3"></div>
</div>
</div>
</template> <script>
export default { }
</script> <style lang="scss" scoped>
/*
父元素的属性:
flex: grow; 如果有多余的空间,会按照比例分配剩余的空间
flex-direction column; 主轴对齐方式 如果子元素没有设置高度的话,flex-grow: 会等比例分配高度
flex-direction row-reverse 水平从右往左
flex-direction column-reverse 垂直从下到上
flex-wrap: nowrap 默认不换行 如果超过父元素的宽度,子元素的宽度会被压缩 flex-wrap: wrap;换行 换行如果父元素设置了高度 子元素没有设置高度 那么高度也会被两行的子元素等分
flex-flow: 是flex-direction 和 flex-wrap 属性的简写 默认是 row nowrap
justify-content: flex-start 默认值左对齐; flex-end 右对齐; center 居中对齐; space-between 空白在盒子之间显示; space-around 空白环绕盒子显示
align-items: flex-start 默认值 侧轴开始的方向对齐; flex-end 侧轴结束的方向对齐; center 居中对齐; baseline 如果弹性盒子元素的主轴对齐方式和侧轴一样 则该值与flex-start等效,其他情况下,基线对齐 stretch 各行将会伸展以占用剩余的空间,剩余空间被所有行平分
注意:align-items 如果是stretch 会自动拉伸至和父元素的高度一致 align-content(多行侧轴对齐方式) flex容器中的子项不止一行时该属性才有效果
align-content: flex-start 侧轴开始的方向对齐; flex-end 侧轴结束的方向对齐; center 居中对齐; space-between 空白在盒子之间显示; space-around 空白环绕盒子显示;stretch 拉伸显示 子元素的属性:
flex-grow: 父元素的宽度大于子元素的宽度时,如果有剩余的空间,按照扩展比例来分配 默认值是0 表示该元素不索取父元素的剩余空间,如果值大于0,表示索取,值越大,索取的越多
flex-shrink 父元素的宽度小于子元素的宽度之和时,flex-shrink会按照一定的比例进行收缩 默认值是1 值越大,减小的越厉害。如果值是0,表示不减少
flex-basis 设置或检索弹性盒子伸缩基准值,如果所有子元素的基准值之和大于剩余空间,则会根据每项设置的基准值,按比例伸缩剩余空间
设置元素的宽度,如果元素上同时设置了width 和 flex-basis, 那么width的值会被flex-basis覆盖
flex: flex-grow, flex-shrink, flex-basis 的简写 默认值为 0 1 auto (备注: 后两个属性可选)
flex-grow flex-shrink flex-basis 简写 flex: none === flex: 0 0 auto flex:auto === flex: 1 1 auto flex:1 === 等同于 flex: 1 1 auto;
align-self: 设置或检索弹性盒子子元素在侧轴上的对齐方式,可以覆盖父元素的align-items 取值和align-items一样 align-items 是整体布局
*/
@import '../styles/index.scss';
.about {
.parent {
width: 300px;
height: 200px;
display: flex;
// flex-direction: column-reverse;
// flex-wrap: wrap;
flex-flow: row wrap; // flex-direction flex-wrap
justify-content: flex-end; // 右对齐
border: 1px solid #ccc;
.son1 {
width: 100px;
background-color: purple;
// flex-grow: 1;
}
.son2 {
width: 100px;
// flex-grow: 2;
background-color: skyblue;
}
// .son3 {
// width: 100px;
// background-color: lime;
// }
// .son4 {
// width: 100px;
// background-color: hotpink;
// }
}
.parent1 {
margin-top: 100px;
width: 375px;
height: 200px;
border: 1px solid #ccc;
display: flex;
// justify-content: space-between; // 右对齐
flex-flow: row wrap;
// align-items: stretch; // 侧轴结束的方向对齐
align-content: space-between;
.son1 {
background-color: purple;
width: 150px;
height: 50px;
}
.son2 {
background-color: skyblue;
width: 150px;
height: 50px;
}
.son3 {
background-color: lime;
width: 150px;
height: 50px;
}
}
.parent3 {
width: 400px;
height: 200px;
border: 1px solid #ccc;
margin: 50px auto;
display: flex;
// 300 + 200 - 400 = 100 300 - 100 * 【300 * 1 /( 300 * 1 + 200 * 2)】= 300 - 44.4 = 255.6
.son1 {
flex-basis: 100px;
background-color: blue;
height: 50px;
align-self: flex-start; // 子元素 侧轴的开始位置对齐
// flex-grow: 1;
// flex-shrink: 1;
}
// 200 - 100 * 【200 * 2 / (300 * 1 + 200 * 2)】 = 142.86
.son2 {
flex-basis: 100px;
background-color: green;
height: 50px;
align-self: center; // 侧轴居中对齐
// flex-grow: 2;
// flex-shrink: 2; // 缩小一倍
}
.son3 {
flex-basis: 100px;
background-color: hotpink;
height: 50px;
align-self: flex-end; // 侧轴的结束位置对齐
}
}
}
</style>

  

flex布局相关属性记录的更多相关文章

  1. android布局常用属性记录

    android布局常用属性记录   http://blog.csdn.net/xn4545945/article/details/7717086这里有一部分别人总结的其余的: align:对齐 par ...

  2. flex布局justify-content属性和align-items属性设置

    前言: flex最常用的就是justify-content和align-items了,这里把这两个属性介绍下,大家更多关于flex布局可以查看阮一峰的日志,写的非常清楚! 阮一峰flex布局的日志:h ...

  3. display属性的表格布局相关属性

    基于CSS属性display:table的表格布局的使用   项目改造中遇到DIV+CSS实现的table,新需求需要在表格使用单元格合并,网上调查返现CSS display:table实现的tabl ...

  4. Flex 布局相关用法

    前言: 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中 就不容易实现. 2009年,W3C提出了 ...

  5. flex布局常用属性

    最近喜欢flex布局,它可以完美的实现响应式布局,下边我总结了它的一些常用属性,喜欢的,也可以练习写一下,很好用~~~ 注意:使用了flex布局,对于子元素的float.clear和vertical- ...

  6. 2017.11.13 flex 布局相关问题

    一.今日任务:城市体验平台小程序的开发(由于数据还未完善,今天主要是 UI 布局的开发) 二.所遇问题 1. flex 布局问题: html: <view class="flex-sp ...

  7. Flex布局 Flexbox属性具体解释

    原文:A Visual Guide to CSS3 Flexbox Properties Flex布局官方称为CSS Flexble Box布局模型是CSS3为了提高元素在容器中的对齐.方向.顺序,甚 ...

  8. 记录Flex布局的属性

    容器属性 flex-dirextion(主轴的方向):>>row(水平) | row-reverse(水平取反) | column(垂直) | column-reverse(垂直取反) f ...

  9. flex布局相关用法

    /* pages/classic/classic.wxss */ .chunk { /* 行内元素可设置但是设置了flex,无效了 *//* display: inline-block; */ wid ...

  10. css3弹性伸缩布局(一)—————flex布局

    CSS3弹性伸缩布局简介 2009年,W3C提出了一种崭新的方案—-Flex布局(即弹性伸缩布局),它可以简便.完整.响应式地实现各种页面布局,包括一直让人很头疼的垂直水平居中也变得很简单地就迎刃而解 ...

随机推荐

  1. HTML——VSCODE配置笔记

    # 使用VSCODE编辑前端代码 ### 1.问题一:无法根据!快速生成html标准代码 (1).首先看文件命名是否出错,即文件名后缀名.html (2).第一步没出错,就在新建文件的编辑状态下拨动C ...

  2. leetcode之——二分法模板

    class Solution: def search(self, nums: List[int], target: int) -> int: n=len(nums) left,right=0,n ...

  3. flask create_time update_time is_delete

    create_time = db.Column(db.DateTime, server_default=func.now()) update_time = db.Column(db.DateTime, ...

  4. qt的窗口

      1.窗口.字部件以及窗口类型(记得不牢固的) (1)#include<QtWidget> Widgets是在Qt中创建用户界面的主要元素. Widgets可以显示数据和状态信息,接收用 ...

  5. QT动态库的创建和使用

    QT动态库的创建和使用 步骤一: 创建一个库文件 Library 步骤二:进行动态库封装方法的实现 注意事项:要注意共享类均需要包含导出的宏定义 这个宏定义和导出向导的宏定义一致 宏定义: 向导文件: ...

  6. uni-app中调用高德地图去设置点和轨迹

    盒子部分 <view style="width: 100%; height: 100%" id="busContainer"> </view& ...

  7. Qt回车键提交文本代码

    QTextEdit 文本框中 回车键提交文本,Ctrl+回车键实现换行的代码: void QTextEdit::keyPressEvent(QKeyEvent * e) { e->ignore( ...

  8. idea的Tomcat的配置

    1.创建一个web项目 2.创建项目完成后,配置   点击add 3.点击扳手  选择tomcat Server ----->Local 4.选择tomcat的文件夹路径  点击ok 5.再次点 ...

  9. 九九乘法表打印记一次al面试

    for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(i + "x&quo ...

  10. python 猜数字

    方法一 import randomif __name__ == '__main__':    yourname = input("你好! 你的名字是什么?\n");    prin ...