九宫格(html css实现)---初识flex布局

news/2024/9/21 23:50:42/文章来源:https://www.cnblogs.com/GJ504b/p/18424698

记录flex属性并实现一个九宫格

flex属性

Flex 容器:

需要注意的是:当时设置 flex 布局之后,子元素的 float、clear、vertical-align 的属性将会失效

.container {display: flex;
}//块状元素.container {inline-flex;  
}//行内元素

块状元素
1.*** 独占一行:块元素会自动开始一个新行,并且占据整个容器的宽度
2. 可以
设置宽度与高度:你可以为块元素指定宽度(width)和高度(height)属性。
3. 可以包含其他
块元素或行内元素:块元素可以包含其他块元素或者行内元素。
4. 垂直排列:
默认情况下,多个块元素会垂直排列。***

e.g.
<div><p><h1><form><ul><ol><li>

行内元素
1.不会独占一行:行内元素不会自动开始新的一行,只占用必要的宽度。
2.不能设置宽度与高度:行内元素的宽度与高度通常由其内容决定设置宽度与高度通常无效。
3.通常只包含数据和其他行内元素:行内元素通常不能包含块元素,但可以包含其他行内元素。
4.水平排列:多个行内元素会按照顺序水平排列,直到一行放不下才会换行。

<span>, <a>, <img>, <strong>, <em>, <input>, <label>

通过css实现块状元素和行内元素的转换

.container{
display:inline;
}//可以使块元素表现得像行内元素.container{
display:block;
}//可以使行内元素表现得像块元素。

flex容器的五大属性

一. flex-direction: 决定主轴的方向(即项目的排列方向)

.container {flex-direction: row;
}

1.row【默认值】主轴为水平方向,起点在左端
img
2.row-reverse:主轴为水平方向,起点在右端

.container {flex-direction: row-reverse;
}

alt textimg

3.column:主轴为垂直方向,起点在上沿

.container {flex-direction: column ;
}

alt textimg
[正如上文所言,行内元素会水平排列]
4.column-reverse:主轴为垂直方向,起点在下沿

.container {flex-direction: column-reverse;
}

alt textimg

二·. flex-wrap: 决定容器内项目是否可换行

【默认情况下,项目都排在主轴线上】
1.flex-wrap 可实现项目的换行【自动化】

2.wrap:项目主轴总尺寸超出容器时换行第一行在上方

.container {flex-wrap: wrap;
}

alt textimg
3.nowrap 不换行,即当主轴尺寸固定时,当空间不足时,项目尺寸会随之调整而并不会挤到下一行。

.container {flex-wrap: nowrap;
}

alt textimg
4.wrap-reverse:换行,第一行在下方

.container {flex-wrap:wrap-reverse;
}

alt textimg

三· justify-content:定义了项目在主轴的对齐方式。
1.flex-start 左对齐 【默认值

.container {justify-content: flex-start;
}

【justify-content优先级<<<flex-wrap】
2.flex-end:右对齐

.container {justify-content: flex-end;
}

alt textimg
3.center:居中

.container {justify-content: center;
}

alt textimg
4.space-between:两端对齐,项目之间的间隔相等,即剩余空间等分成间隙。

.container {justify-content: space-between;
}

alt textimg
5.space-around:每个项目两侧的间隔相等,所以项目之间的间隔比项目与边缘的间隔大一倍。

.container {justify-content: space-around;
}

alt textimg
四· align-items: 定义了项目在交叉轴上的对齐方式
e.g.建立在主轴为水平方向时测试,即 flex-direction: row
1.auto

默认值为 stretch 即如果项目未设置高度或者设为 auto,将占满整个容器的高度。【假设容器高度设置为 100px,而项目都没有设置高度的情况下,则项目的高度也为 100px。】

.container {align-items: auto;
}

2.flex-start

.container {align-items: flex-start;
}

alt textimg
【AP分布沿主轴方向(由flex-direction决定)递增,上对齐】
3.flex-end

.container {align-items: flex-end;
}

alt textimg
【AP分布沿主轴方向(由flex-direction决定)递增,下对齐】
4.center

.container {align-items: center;
}

alt textimg
【AP分布沿主轴方向(由flex-direction决定)递增,中线对齐】
5.baseline

.container {align-items: baseline;
}

项目的第一行文字的基线对齐

五·align-content: 定义了多根轴线的对齐方式,如果项目只有一根轴线,那么该属性将不起作用

当你 flex-wrap 设置为 nowrap 的时候,容器仅存在一根轴线,因为项目不会换行,就不会产生多条轴线。
当你 flex-wrap 设置为 wrap ** 的时候,容器可能会出现多条轴线**,这时候你就需要去设置多条轴线之间的对齐方式了。
e.g.建立在主轴为水平方向时测试,即 flex-direction: row, flex-wrap: wrap
1.flex-start:轴线全部在交叉轴上的起点对齐

.container {align-content: flex-start;
}

2.flex-end:轴线全部在交叉轴上的终点对齐

.container {align-content: flex-end;
}

3.center:轴线全部在交叉轴上的中间对齐

.container {align-content: center;
}

4.space-between:轴线两端对齐,之间的间隔相等,即剩余空间等分成间隙。

.container {align-content: space-between;
}

5.space-around:每个轴线两侧的间隔相等,所以轴线之间的间隔比轴线与边缘的间隔大一倍。

.container {align-content: space-arround;
}

实现九宫格

<!DOCTYPE html>
<html lang="ch">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>九宫格</title><link rel="stylesheet" href="./九宫格.css">
</head>
<body>
<div class="container"><span class="box1">1</span><span class="box2">2</span><span class="box3">3</span><span class="box1">1</span><span class="box2">2</span><span class="box3">3</span><span class="box1">1</span><span class="box2">2</span><span class="box3">3</span>
</div></body>
</html>
.container {display: flex;flex-direction: row-reverse;flex-wrap: wrap;justify-content:center;padding: 0px;margin: 0 auto;width: 1000px;height: 800px;font-size: 50px;font-weight: 100;font-style: italic;}
.box1 {
background-color:red;
height: 33.3%;
width: 30%;
border: 1px solid;
flex-direction: row;
}
.box2 {
background-color:yellow;
height: 33.3%;
width: 30%;
border: 1px solid;
flex-direction: row;
}
.box3 {
background-color: green;
height: 33.3%;
width: 30%;
border: 1px solid;
}

alt textimg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/801268.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用Adguard屏蔽必应搜索中的CSDN内容

### 原因众所周知,CSDN 搜索结果,内容复制需要魔法,有的还需要关注,啥都要钱,质量还特别差虽然 百度和必应可以写参数直接去除CSDN 搜索结果,但每次都要写很麻烦### 解决办法原因 众所周知,CSDN 搜索结果,内容复制需要魔法,有的还需要关注,啥都要钱,质量还特别差 虽…

windows应急响应(二)

1.启动项win+r 输入msconfig,在"工具"里找到“任务管理器”;(底部任务栏右键,也可打开),查看启动项一般应用启动项位置:C:\Users\adnim\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupwin+r 输入msinfo32,在"软件环境"里可以看到Au…

领导大规模敏捷Leading SAFe认证培训课

领导大规模敏捷Leading SAFe认证课

asio的buffer

ASIO的buffer理解 asio的buffer结构 任何网络库都有提供buffer的数据结构,这个就是收发数据的缓冲区。 asio提供了mutable_buffer 和 const_buffer这两个结构,他们都是一段连续的空间,首字节存储了后续数据的长度。mutable_buffer用于写服务,const_buffer用于读服务。但是这…

格林公式7

例1 计算积分 \[I=\int_Cx^2ydx-xy^2dy, \]其中C是上半圆 \(\begin{aligned} & \text{ }x^2+y^2=a^2,y\geqslant0,\text{ }\\ & \end{aligned}\) 逆时间方向 \[\begin{aligned} & \text{ }x^2+y^2=a^2,y\geqslant0,\text{ }\\ & \end{aligned} \]考虑到上半…

9.21 abc372f

容易发现平移操作,都是 \(to\) 向左平移。然后更新完了过后,\(x\) 再左移。 当然 dp 数组整体是左移的。 本题一个重点就是,假设整个 dp 不动,让我们的操作反着动。

基于AODV和leach协议的自组网络平台matlab仿真,对比吞吐量,负荷,丢包率,剩余节点个数,节点消耗能量

1.算法仿真效果 matlab2017b仿真结果如下(完整代码运行后无水印):本程序系统是《m基于matlab的AODV,leach自组网网络平台仿真,对比吞吐量,端到端时延,丢包率,剩余节点个数,节点消耗能量》的的升级。升级前原文章链接增加了运动节点的路由测试,包括定向运动,随机运动,静止…

笛卡尔坐标张量简介7

张量(tensor) 这一术语最初是用来描述弹性介质各点应力状态的,后来发展成为力学和物理学的一个有力数学工具,目前力学方面的理论性文献都不同程度地这用了这一工具 由坐标原点和三条不共面的标架直线构成的坐标系称为直线坐标系,如果三标架直线上的单位尺度相同,称为笛卡…

尝试RVC音色克隆团长音色

前言 昨晚玩剑网3突发奇想,把团长声音克隆下来,利用语音喵制作成语音DBM。 这样不管团长开不开团,打团也能有团长声音听了诶嘿嘿。 于是当场关闭游戏声音录了打本的素材,本文就边做边记录。 下载 在B站找到了这个教程: 【你的声音,现在是我的了!】https://www.bilibili.…

vsftpd部署(centos7.9)

说明:– vsftpd的版本:vsftpd-3.0.2-29.el7_9.x86_64– ftp根目录:/var/www– ftp 配置文件目录:/etc/vsftpd– ftp 虚拟用户权限配置文件目录:/etc/vsftpd/user_conf 实现目标:– 匿名用户可以登录,但是不能访问虚拟用户的宿主目录,只能访问共享目录– 虚拟用户对自己…

隐私保护体系下网络威胁情报共享的研究现状和方案设计

来源:http://netinfo-security.org/article/2024/1671-1122/1671-1122-24-7-1129.shtml威胁情报 网络威胁情报是关于网络中正在进行的或潜在的恶意活动信息,涵盖但不限于特定的恶意软件样本、恶意IP地址、钓鱼电子邮件信息、黑客组织的入侵行为等内容,对于提前感知预警、防范…