马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 不二如是 于 2021-8-11 09:27 编辑
37、38我们制作了一个单个图文的混排。
39、40我们搞定图、标题、文本的三P混排。
这次搞一个双列均匀分布布局。
将两个图、标题、文本混排布局模拟成列表形式,在很多网页中都能见到。
是一种很常见布局方式。
<section> 标签是 HTML 5 中的新标签。
定义文档中的节(section、区段)。比如章节、页眉、页脚或文档中的其他部分。
其实就是一个节点,该节点下的在添加两个article节点
article又包含h1、p、img三个元素。
代码:<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css"></style>
</head>
<body>
<section>
<article>
<img src="1.png" alt="drumsticl_1">
<h1>蓝鸡腿</h1>
<p>穷爸爸:“你要好好学习,以后就能找一份好工作养活自己。”驱动学习的力量是恐惧。</p>
</article>
<article>
<img src="2.png" alt="drumsticl_2">
<h1>红鸡腿</h1>
<p>富爸爸:“你要好好学习,以后就能开自己的公司,创造很多就业机会给别人。驱动力量是爱,好好学就会帮到更多的人。</p>
</article>
</section>
</body>
</html>
效果图:
默认效果不是一般的’丑‘。
接下来,就是见证奇迹的时刻了。
现将页面的所有margin和padding清零。
便于后续增加自定义的设置。<style type="text/css">
*{
margin: 0;
padding: 0;
}
</style>
效果图:
为了能够更佳清晰地呈现布局范围,我们给section元素设置一个固定的宽度。
顺便加一个在33讲过的box-shadow属性
为其设置背景色和边框:section{
width: 980px;
background:#f5f5f5;
box-shadow: 0 0 1px rgba(0,0,0,.4) inset;
}
效果图:
可以用box-shadow代替border,这也是制作边框的另一种途径。
大小1px、x&y方向上没有位移,40%透明度的淡色阴影。
就下来,将两个article元素两列排放,设置宽度、浮动即可:article{
width: 50%;
float: left;
}
效果图:
我擦,排列成功了,但是设置的边框和背景色居然不见了!
难道是优先级?合并?还是弱肉强食?
正好借此机会,来介绍下文档流的原理。
在section中原本有两个article元素,这就形成了section内部的文档流。
而section的高度正是由article元素高度得来。
当我们将article加以浮动时,按之前咱们建立起来的认知系统。
他们就从文档流中抽取出来了,不受section设置影响。
当section中两个articl都设置为float,其内部文档都被抽空。
这样就失去了自身的高度,类似‘崩塌’了。
怎么解决呢?
只要在父元素中添加一个不浮动的子元素来稳定section内部结构,就可以了。
而为了DOM(Document Object Model(文档对象模型))结构的简单,常使用::after伪元素完成。
如果你忘了选择器优先级,请点这里:0 0 3 4 - CSS优先级 | 全网最粗暴有效
代码如下: section::after{
content: "";
display: table;
clear: both;
}
效果图:
这三行代码,是我们目前最常用的清除浮动的方法。
这位鱼油,如果喜欢本帖子,请订阅 专辑-->( 传送门)( 不喜欢更要订阅 )
官方 Web 课程:
|