CSS-清除多行盒子排列每行最后一个盒子外边距属性

CSS——CSS盒子模型(重点※) 是你的温柔导论看透网页布局的本质盒子模型(Box Model)盒子边框(border)盒子边框写法总结表表格的细线边框圆角边框(CSS3)内边距(padding)外边距margin外边距实现盒子居中文字盒子居中图片和背景区别清除元素的默认内外边距外边距合并相邻块元素垂直外边距的合并嵌套块元素垂直外边距的合并content宽度和高度盒子模型布局稳定性盒子阴影盒子基本训练案例导航栏案例※新闻内容布局美化案例※ 导论 其实,CSS就三个大模块: 盒子模型 、 浮动 、 定位,其余的都是细节。要求这三部分,无 阅读详情

在项目中我曾经碰到过多行盒子排列,为了盒子之间的间隔从而添加了margin-right属性,但在每一行的最后一个元素的margin-right属性总是会影响到盒子的布局,从而导致本应该出现在当前行最后一个的盒子因为该属性导致空间不够从而被换行到下一行进而导致的UI显示问题。
通过多次的实践思考我想到了几种解决的办法,也因此希望在这里进行心得记录,其具体的解决方法如下:

①使用结构伪类选择器进行筛选
nth-child()
在类名为test的盒子样式上则如下所示:

.test:nth-child(4n){
	margin-right: 0;
}

在nth-child()当中n是从0开始,所以当可以计算出一行会有多少个盒子时则可以使用倍数进行选取,比如上面4n就是代表每行4个盒子

②在父级盒子上使用calc函数

<div class="father">
	<div class-"block">
		<div class="son">1</div>
		<div class="son">2</div>
		<div class="son">3</div>
		<div class="son">4</div>
		<div class="son">5</div>
		<div class="son">6</div>
		<div class="son">7</div>
		<div class="son">8</div>
	</div>
</div>

在如上的html中我们可以使用一个类名为block的盒子来进行隔离,从而使用下面所示的css样式

.father {
	width: 800px;
	height: 600px;
	........
}
.block {
	width: calc(100% + 25px);
}
.son {
	margin-right: 25px;
	margin-bottom: 10px;
	........
}

在这里我为每个盒子都设定margin-right属性为25px,因此在每一行的最后一个盒子就会因为对于的margin-right属性从而导致被迫换行,而在father和son两个盒子之间使用一个content盒子进行间隔,然后利用calc函数计算宽度值为father + margin-right的属性值,这样就可以间接去除每一行最后一个盒子的margin-right属性

CSS - display flex 弹性布局实现一行仅显示 2 个,每行显示指定个数(设置 space-between / space-around 超出自动换行)详细示例代码 display flex css 一行显示两个,css弹性布局设置每行显示指定个数,css3 display: grid;弹性布局一行固定几个,列设置flex固定一行显示2个,CSS控制一行显示两个,css弹性布局设置每行显示指定个数,[CSS] 单列定宽的两列弹性布局,这个css是控制只有2个div在一行上么,css弹性布局+自动换行,flex布局 一行显示两个同宽、高的盒子 并 可以换行,flex布局每行显示固定个数,列设置flex固定一行显示2个,css - flex布局如何每行固定数量显示CSS3 阅读详情

相关推荐

YOLOv改进 | YOLOv11添加WTConv小波卷积,能够更有效地捕捉局部和全局特征

在计算机视觉目标检测领域,YOLO(You Only Look Once)系列算法凭借“单阶段检测”的高效性(一次前向传播同时完成目标定位与分类),已成为工业界与学术界的主流选择。从YOLOv1到YOLOv11,算法持续迭代优化,在速度与精度之间寻求平衡,广泛应用于自动驾驶、智能安防、工业质检等场景。为解决上述问题,本文提出一种基于,将输入特征图分解为不同频率的子带(低频全局信息与高频局部细节),并分别通过卷积操作提取局部与全局特征,最后融合多尺度特征,从而更有效地捕捉目标的局部细节与全局结构。

走向CTO的路上... 1201

使用nth-child()时发现的bug

使用nth-child()选择器时发现的bug

a1071626267的博客 722

选课系统进不去?我用 Python 做了个“捡漏挂机”脚本,全自动监控空余名额

频率控制:脚本请求频率不要太高(建议间隔 3-5 秒以上),否则可能被教务系统封 IP,甚至会被教务处请喝茶。仅供学习:本文旨在通过选课场景教学requests和网络抓包原理,请勿用于非法用途或破坏公平性。刷新页面 -> 等待加载 -> 用眼睛看人数 -> 没满?-> 点击选课 -> 确认这个流程最大的瓶颈在于**“等待加载”和“人的反应时间”**。网页加载需要渲染 HTML、CSS、图片,而 Python 脚本只需要请求一个微小的 JSON 数据接口,速度是浏览器的10 倍以上。fill:#333;

BUG猿的博客 265

CSS属性选择器

CSS属性选择器详解

man_tutu的博客 536

css进行布局时,同一行多个元素摆放后,设置margin-right让他们之间产生间距,那么最后一个元素设置margin-right是多余的

解决方法一: 每一行的最后一个元素,总是加一个class,通过类选择器去除这个margin-right 解决方法二: 通过伪类选择器(需要考虑到兼容性问题) 解决方法三: .container固定的宽度 >.wrap+负margin> 涉及到公式,实际上就是.container进行撑大。 ...

jgsafd的博客 1563

nth-child无效?nth-child(4-n)等于nth-child(-n+4)?

最后,试试把写法改一下,效果可能就出来咯;如果你的nth-child还是不生效,也可能是你把nth-child()和nth-of-type()弄混了。今天写样式的时候,发现nth-child(4-n)不起作用,中间就不说了,结果发现要把4-n写成-n+4才有用,上代码;首先,关于nth-child的基本用法和选中前几个元素这里就先不说了,教程有很多很详细的,一搜就有。上面写的是an+b,应该是顺序不能变的,当查漏补缺吧。如果我的拙见有什么不对的地方,欢迎指出,本人也是小白;查了MDN,上面是这样定义的。

weixin_55253195的博客 925

CSS盒子模型(对内外边距问题着重讲解)

介绍CSS盒子模型。包括盒子墨香的组成,盒子的水平居中,外边距合并,盒子模型布局稳定性相关知识点。

qq_43537721的博客 2304

CSS基础知识(盒子模型、浮动)

CSS基础知识盒子模型看透网页布局的本质概念盒子边框内边距外边距块级盒子水平居中文字居中和盒子居中区别清除元素的默认内外边距外边距合并相邻块元素垂直外边距的合并嵌套块元素垂直外边距的合并盒子模型布局稳定性浮动CSS 布局的三种机制普通流(标准流)浮动定位为什么需要浮动什么是浮动概念作用语法特点浮动的应用浮动的扩展清除浮动为什么要清除浮动清除浮动本质清除浮动的方法语法额外标签法父级添加overflow属性方法使用after伪元素清除浮动使用双伪元素清除浮动Photoshop切图PS切片工具切图插件 盒子模型

初辰的博客 3811

【HTML+CSSCSS页面布局:盒子模型+浮动+定位

一、盒子模型 1、盒子模型组成 CSS 盒子模型本质上是一个盒子,封装周围的 HTML 元素,它包括:边框、外边距、内边距、和实际内容。 2、边框(border) border可以设置元素的边框。边框有三部分组成:边框宽度(粗细)、边框样式、边框颜色。 边框会影响盒子的实际大小。 /* 边框语法 */ border : border-width || border-style || border-color /* 边框简写-无顺序 */ border: 1px solid

qq_30148319的博客 5682

前端三件套——CSS盒子模型加浮动等于热气球

文章目录盒子模型 盒子模型 概念: 网页页面中每一个标签,我们都可以理解为一个“盒子” 好处: 更加方便进行布局,也就是在美工美眉给我们发来设计图时,作为切图仔的我们就可以将页面中每个元素理解成盒子,合理地摆放、嵌套进行布局。 组成: 盒子由四部分组成—— 内容区域content 内边距区域padding 边框区域border 外边距区域margin ...

weixin_62542181的博客 1777

css盒子模型

CSS盒子模型是网页布局的基础,它描述了元素在页面上的排列方式。Content(内容) - 盒子的内容,显示文本和图像。Padding(内边距) - 清除内容周围的区域,内边距是透明的。Border(边框) - 围绕在内边距和内容外的边框。Margin(外边距) - 清除边框外的区域,外边距是透明的。把盒子模型看成一个快递,快递里面的物品就是content,快递里面的缓冲物就是padding,快递盒子就是border,两个快递间的距离就是margin

2301_80840100的博客 6221

css盒子布局/浮动解析

css解析盒子布局/版心和浮动解析

weixin_46264305的博客 1501

CSS盒子模型详解:清除无序列表符号

本文详细介绍了CSS盒子模型的概念及组成部分,包括content(内容)、padding(内边距)、border(边框)和margin(外边距)。重点讲解了各部分的语法设置、简写方式及常见问题解决方案,如边框会影响盒子大小、内边距会撑开盒子外边距合并现象等。同时提供了清除外边距的标准写法,以及如何清除无序列表项目符号的方法(list-style:none)。文章还特别说明了行内元素设置边距的注意事项,是掌握网页布局基础知识的实用指南。

莫踌躇 2526

CSS3选择器之:nth-child()伪类选择器详解

1、语法:nth-child(an+b)  注意: (an+b)不能写成(b+an); 描述:伪类:nth-child()的参数是an+b,如果按照w3.org上的描述,写成中文,很可能会让人头晕,再加上笔者的文笔水平有限,所以我决定避开an+b的说法,把它拆分成5种写法共5部分来说明。 2、用法: 2-1.简单数字序号写法 --->:nth-child(3); :nth-chi

u013084331的博客 2722

遇见的一些问题汇总(css篇)

1. 高度不继承问题 遇见的问题:第一级已经设置了100%,但是第三层没有铺满 问题所在:第二层没有设置高度100% 解决方法:第二层高度设置为100%

费罗蒙的个人空间 242

css 去掉列表中每一行最后一个元素的外边距属性

css 去掉列表中每一行最后一个元素的外边距属性 设定外框的宽度为`180px` 内部的每个tag宽度`34px`右边距为`12px`并列排列后,一行够排列3个 我们计算一下剩余的宽度: `180-(34+12)*3 = 42` 最终得出剩余宽度为`42`很显然,其实如果最右边的tag的右边距为空,他就可以变成4个一排了

guoqing的博客 6455

css 元素换行后有10PX间距,但最后一排没有。

如果你想要在每行 CSS 元素之间添加 10px 的间距,你可以使用 margin 属性。例如,你可以在你的 CSS 中使用如下代码: .element { margin-bottom: 10px; }

weixin_35756373的博客 468

CSS3选择器nth-child

<!doctype html> <html> <head> <meta charset="utf-8"> <title></title> <style> /* nth-child(n) An+B */ li:nth-child(4n+1){ background-color:darkviolet; }

zjsfdx的博客 434

结构伪类选择器

6.选择父元素里边奇数项的子元素 :nth-child(2n+1) 2n+1或者2n-1或者odd。5.选择父元素里边偶数项的子元素 :nth-child(2n) 2n或者even。7.:nth-child(-n+i) 选择父元素里前i项子元素。11.选择父元素里边按照不同类型的第n个子元素。2.选择父元素里边的最后1个子元素。1.选择父元素里边的第1个子元素。选择父元素里边的最后1个子元素3.选择父元素里边第n个子元素。选择父元素里边的第1个子元素。选择父元素里边第n个子元素。...

m0_62181310的博客 5985

组态王画面中打开网页功能使用

在组态王画面中通过控件打开指定的网页,或在组态王中打开网络摄像头的实时画面。

上一篇: JS系列-事件循环(浏览器)
下一篇: React框架-函数组件与类组件学习
lychee z
博客等级 码龄6年 312粉丝 16原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值