【CSS】网站 网格商品展示 模块制作 ( 清除浮动需求 | 没有设置高度的盒子且内部设置了浮动 | 使用双伪元素清除浮动 )

news2024/11/17 1:29:29

一、清除浮动需求 ( 没有设置高度的盒子且内部设置了浮动 )

绘制的如下模块 :

在上面的盒子中 , 没有设置高度 , 只设置了一个 1215px 的宽度 ;

在列表中每个列表项都设置了 浮动 ;

/* 网格商品展示 */
.box-bd {
	/* 处理列表间隙导致意外换行问题
	   一排有 5 个 228x270 的盒子 , 其中间隙 15 像素
	   228 * 5 + 15 * 4 = 1200 像素 , 
	   但是最后一个盒子右侧添加 15 像素的右边距地话 , 
	   会导致最后一个元素掉到第二行 , 
	   这里需要将盒子宽度从 1200 像素修改为 1215 像素 
	   正好放 5 盒子 + 5 间隙*/
	width: 1215px;
}

/* 网格中 ul 列表中每个列表项样式 */
.box-bd li {
	/* 设置左浮动 让列表项在一行中从左到右排列 */
	float: left;
	/* 设置尺寸 228 x 270 */
	width: 228px;
	height: 270px;
	/* 设置右边距和下边距 */
	margin-right: 15px;
	margin-bottom: 15px;
	/* 设置背景颜色 - 白色 */
	background-color: #fff;
	/* 设置盒子模型的阴影 */
	box-shadow: 2px 2px 2px rgba(0, 0, 0, .3);
}

 

之前的盒子都设置了高度 , 因此其中虽然设置了浮动 , 但不会影响到后续的页面布局 ;

上述模型中 , 没有设置高度 , 并且设置了浮动 , 如果不清除浮动 , 后续排列都会出现问题 ;

使用

/* 清除浮动 - 使用双伪元素清除浮动 */
.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
	*zoom: 1;
}

清除浮动 ;

清除浮动时 , 给要清除浮动的 父容器 , 设置 clearfix 样式 ;

二、清除浮动代码示例

首先 , 在 CSS 样式中 , 定义 使用双伪元素清除浮动 的样式 ;

/* 清除浮动 - 使用双伪元素清除浮动 */
.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
	*zoom: 1;
}

然后 , 在 HTML 标签结构中 , <ul> 标签的上一层父容器中 , 设置清除浮动 ;

	<!-- 网格商品展示模块 - 开始 -->
	<div class="box w">
		<div class="box-hd">
			<h3>精品推荐</h3>
			<a href="#">查看全部</a>
		</div>
		<!-- 没有设置高度 内部有浮动 必须清除浮动 -->
		<div class="box-bd clearfix">
			<ul>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1200人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
				<li>
					<img src="images/pic.jpg" alt="">
					<h4>Think PHP 5.0 博客系统实战项目演练</h4>
					<p><span>高级</span>  •  1125人在学习</p>
				</li>
			</ul>
		</div>
	</div>
	<!-- 网格商品展示模块 - 结束 -->

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Navisworks2020~2023安装包分享(附安装教程)

目录 一、软件介绍 二、下载地址 一、软件介绍 Navisworks是一款专业的建筑、工厂、机械和设备设计软件工具&#xff0c;旨在帮助项目相关方可靠地整合、分享和审阅详细的三维设计模型。它提供了一系列功能强大的工具&#xff0c;使设计师、工程师和建筑师能够更好地协作、沟…

代码随想录算法训练营第四十六天 | 139.单词拆分

代码随想录算法训练营第四十六天 | 139.单词拆分 139.单词拆分 139.单词拆分 题目链接 视频讲解 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 注意&#xff1a;不要求字典中出现的单词全部都使用&#xff0c;并且字典…

【效能平台】django项目中集成httprunner做接口测试补(五)

这里写目录标题 一、登录接口数据驱动测试1、定义登录api:api/login_api_form.yml2、定义login_testcases.yaml3、定义login_testcases.yaml4、debugtalk.py文件5、执行测试用例6、测试报告7、优先级:二、将httprunner集成到测试平台中一、登录接口数据驱动测试 1、定义登录a…

电脑视频编辑软件前十名 电脑视频编辑器怎么剪辑视频

对于大多数创作者而言&#xff0c;视频后期工作基本都是在剪辑软件上进行的。一款适合自己的视频剪辑软件&#xff0c;能够节省出大量的时间和金钱成本&#xff0c;让剪辑师省钱又省心。那么有关电脑视频编辑软件前十名&#xff0c;电脑视频编辑器怎么剪辑视频的相关问题&#…

【Python从入门到进阶】33、使用bs4获取星巴克产品信息

接上篇《32、bs4的基本使用》 上一篇我们介绍了BeautifulSoup的基本概念&#xff0c;以及bs4的基本使用&#xff0c;本篇我们来使用bs4来解析星巴克网站&#xff0c;获取其产品信息。 一、星巴克网站介绍 星巴克官网是星巴克公司的官方网站&#xff0c;用于提供关于星巴克咖啡…

收费文章怎么复制

1.复制这篇文章发现收费 2.电脑登录一个qq&#xff0c;截图找到这个屏幕视图 3.右边这个文字可以复制 4.这个只能识别一段一段复制

网卡重启,导致docker容器暴露端口都无法对外开放

公司内部网络ip冲突&#xff0c;重新分配了某个范围的ip后&#xff0c;修改网络信息&#xff08;位于/etc/sysconfig/network-scripts目录下对应网卡&#xff09;后&#xff0c;重启网卡&#xff08;systemctl restart network&#xff09;&#xff1b;后面导致docker容器暴露的…

计算机网络-笔记-第三章-数据链路层

目录 三、第三章——数据链路层 1、数据链路层概述&#xff08;帧&#xff09; &#xff08;1&#xff09;封装成帧、差错检测、可靠传输&#xff08;简单介绍&#xff09; &#xff08;2&#xff09;CSMA/CD 2、封装成帧 &#xff08;1&#xff09;透明传输&#xff08;…

JVM虚拟机:定位对象的两种方式

定位对象的方式 1、句柄池 2、直接指针 ‘句柄池 直接指针 在Java中&#xff0c;可以使用两种方式来定位对象&#xff1a;句柄池和直接指针。 1. 句柄池&#xff1a;在Java的句柄池模型中&#xff0c;Java虚拟机&#xff08;JVM&#xff09;会为每个对象创建一个句柄&#xff…

2022 ICPC 南京 M Drain the Water Tank(叉积 + 思维)

2022 ICPC 南京 M. Drain the Water Tank(叉积 思维) Problem - M - Codeforces 大意&#xff1a;给一个多边形 &#xff0c;多边形充满水 &#xff0c; 点集逆时针给出 &#xff0c; 求最少的出水阀门的数量使得水可以全部流出。 思路&#xff1a;通过画图发现 &#xff0…

vector VS deque

1. vector与deque vector与动态数组相同&#xff0c;能够在插入或删除元素时自动调整自身大小&#xff0c;其存储由容器自动处理&#xff0c;vector通常占用多于静态数组的空间&#xff0c;因为要分配更多的内存以管理将来的增长&#xff0c;在每次插入元素的时&#xff0c;仅…

红外与可见光图像融合入门教学

红外与可见光图像融合入门教学 什么是红外与可见光图像融合论文DeepFuseDenseFuseRFN-NestFusionGANDDcGANAttentionFGANGANMcC 总结 博主目前马上进入研二阶段&#xff0c;也算是入门了红外与可将光图像领域&#xff0c;正好总结下&#xff0c;以供刚接触该领域的萌新们参考。…

ADC模块之HX711

今天&#xff0c;回顾了HX711模数转换模块&#xff0c;HX711模块经常用于电子秤的设计。 模数转换模块的输入有三种&#xff08;HX711的输入为差分输入&#xff09;&#xff1a; HX711的驱动程序 #include "HX711.h"//********************************************…

自考《00058 市场营销学》2023年4月历年真题答案

自考科目列表,自考本科,题库,自学考试,历年真题。 1.某汽车制造商宣称“我们的汽车唯一的缺点就是生产得不够快”,该公司秉持的营销哲学是 A.产品导向 B.推销导向 C.顾客导向 D.生产导向 2.LM公司故意不履行和中间商合同约定的相关义务&#xff0c;不按时支付供货商的货款&…

Java入职第十一天,深入了解静态代理和动态代理(jdk、cglib)

一、代理模式 一个类代表另一个类去完成扩展功能,在主体类的基础上,新增一个代理类,扩展主体类功能,不影响主体,完成额外功能。比如买车票,可以去代理点买,不用去火车站,主要包括静态代理和动态代理两种模式。 代理类中包含了主体类 二、静态代理 无法根据业务扩展,…

火山引擎 DataLeap:从短视频 APP 实践看如何统一数据指标口径

更多技术交流、求职机会&#xff0c;欢迎关注字节跳动数据平台微信公众号&#xff0c;回复【1】进入官方交流群 短视频正在成为越来越多人发现世界的窗口&#xff0c;其背后的创作者生态建设是各大短视频 APP 不可忽视的重要组成部分。 为了激励更多优质内容生产&#xff0c;某…

下一代存储解决方案:湖仓一体

文章首发地址 湖仓一体是将数据湖和数据仓库相结合的一种数据架构&#xff0c;它可以同时满足大数据存储和传统数据仓库的需求。具体来说&#xff0c;湖仓一体可以实现以下几个方面的功能&#xff1a; 数据集成&#xff1a; 湖仓一体可以集成多个数据源&#xff0c;包括结构…

exe打包工具(收录)

收录&#xff1a; Advanced Installation静默安装包的制作方法 Advanced Installer打包exe安装包教程 Advanced Installer使用指南 advanced installer 使用常见问题整理 exe打包工具&#xff1a;advanced installer介绍

使用飞桨实现的第一个AI项目——波士顿的房价预测

part1.首先引入相应的函数库: 值得说明的地方&#xff1a; &#xff08;1&#xff09;首先&#xff0c;numpy是一个python库&#xff0c;主要用于提供线性代数中的矩阵或者多维数组的运算函数&#xff0c;利用import numpy as np引入numpy&#xff0c;并将np作为它的别名 part…

这可能是你看过最详细的 [八大排序算法]

排序算法 前置知识 [排序稳定性]一、直接插入排序二、希尔排序三、直接选择排序四、堆排序五、冒泡排序六、快速排序七、归并排序八、计数排序&#xff08;非比较排序&#xff09;排序复杂度和稳定性总结 前置知识 [排序稳定性] 假定在待排序的记录序列中&#xff0c;存在多个…