详细介绍CSS之margin知识点

1.margin的百分比值普通元素的百分比maigin相对于容器元素的宽度(width) 进行计算的。

这里我们在图片外面设置一个宽高分别为800 * 600的容器。设置img{ margin: 10%; }

结果如下

 详细介绍CSS之margin知识点  
结果margin值都是 800 * 10% = 80px; 所以这里都是相对于容器的宽度计算的 容器的宽度计算 容器的宽度计算。说三遍

2.绝对定位的百分比maigin值

详细介绍CSS之margin知识点详细介绍CSS之margin知识点 

立即学习“前端免费学习笔记(深入)”;

相对于第一个定位的祖先元素的 width值计算的。就是 parent 的 width = 1000px. 所以 margin = 100px;

3.可以使用margin 实现 2 : 1 的自适应

比如 有两个容器

详细介绍CSS之margin知识点 详细介绍CSS之margin知识点

这里 box的高度没有指定。 由于设置 margin 50% 。他的高度就是父容器的一半  所以高宽比就是 1 : 2;

详细介绍CSS之margin知识点

4. margin 的重叠 为什么重叠

A) margin 重叠的两个特性

只会发生在block的水平元素上。 (不包括 float 和 absolute元素)

不考虑 wirte-mode(就是书写格式)  只发生在 垂直方向(margin-top margin-bottom)

B) 发生的情况

1> 相邻的兄弟元素

2> 父级的第一个 和 最后一个子元素

3> 空的 block。 

例子一 相邻的兄弟元素

详细介绍CSS之margin知识点     详细介绍CSS之margin知识点

  这里就是两个兄弟元素 。

详细介绍CSS之margin知识点 这里的 两个p 之间只有一个em 没有两个em。 因为第一个margin-bottom 和 第二个的 margin-top 发生了重叠。

例子二 父元素和最后一个子元素 重叠

详细介绍CSS之margin知识点 详细介绍CSS之margin知识点

按照常规理论 son 和 父元素的 father 之间会 留出 80px的 margin-top值。但是实际上没有。son的背景元素没有变化 没有留出80px;

这里只是 给 父元素设置了 80px;

详细介绍CSS之margin知识点

父子 margin重叠的 条件

详细介绍CSS之margin知识点详细介绍CSS之margin知识点

那么怎么干掉margin-top 重叠呢?

只要不让它满足那些条件就可以了。

父元素添加 overflow: hidden;  border-top  padding-top (在他们之间加个空格);

例子三 空block元素的 margin 重叠。

详细介绍CSS之margin知识点   详细介绍CSS之margin知识点

注意 里面没有任何内容的空元素 。空元素发生margin重叠的条件

详细介绍CSS之margin知识点

4 margin重叠的计算规则。

A) 正正取大值

B) 正负值相加

C) 负负取最负。

5. margin 重叠的意义

A)  连续段落或列表之类 如果没有margin重叠 收尾出现 1 : 2 就会显得不协调

B) web 中任何地方嵌套或直接放p 都不会影响原来的布局

C) 遗落的空的任意 多个p元素 不要影响原来阅读的排版

实际应用

制作列表 的时候控制每个列表的距离里面的

详细介绍CSS之margin知识点

.list{

margin-top : 15px;

margin-bottom: 15px;

}

更具有健壮性 即使最后一个 移除了 亦不会影响布局

更多详细介绍CSS之margin知识点相关文章请关注PHP中文网!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1607709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 21:02:50
下一篇 2025年12月23日 21:03:09

相关推荐

  • CSS使用float属性设置浮动元素的方法介绍

    浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。 由于浮动框不在文档的普通流中,所以文档的普通流中的块表现得就像浮动框不存在一样。 float效果展示基本设置 在网页中正常添加3个p色块: HTML代码: 立即学习“前端免费学习笔记(深入)”; p1 p2 p3 简单设…

    2025年12月23日 好文分享
    000
  • CSS的clear属性清除浮动的用法详细介绍

    什么是css清除浮动?  网络上流行的说法是:在非IE浏览器(如Firefox)下,当容器的高度(height)为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象。这个现…

    2025年12月23日
    000
  • DIV+CSS布局中自适应高度的解决方法

    代码 Equal height(DIV+CSS布局中自适应高度的解决方法) body{ padding: 0; margin: 0; font-size: 12px; font-family: Arial, Helvetica, sans-serif; line-height: 140%; text…

    2025年12月23日
    000
  • 浅谈css中的clip裁剪用法介绍

    clip 属性是用来设置元素的形状。用来剪裁绝对定位元素(absolute or fixed)。 clip有三种取值:auto |inherit|rect。inherit是继承,ie不支持这个属性, auto是默认  前两个基本属于打酱油的,我们主要来说一下clip的rect属性。 clip的rec…

    2025年12月23日
    000
  • 详解css优先级计算方法

    主要的css选择器有id,class,tag,[],:,::等,而通常需要对其优先级进行判断的有id,class,tag,另外内联样式和!important也和css的优先级有关系。 如果将这五种不同情况的优先级以数字的形式来表示的话,其对应关系如下: !important(10000) > …

    好文分享 2025年12月23日
    000
  • 浅谈css中margin的重叠

    父子元素margin重叠 解决办法: 给子元素添加浮动属性,相应父元素添加必要的清浮动属性; 给父元素添加边缘属性,如padding、border; 同级元素margin反向重叠 立即学习“前端免费学习笔记(深入)”; 同级元素margin反向重叠时,元素之间的距离为两个margin值中较大的那个。…

    好文分享 2025年12月23日
    000
  • css中float的用法详细介绍

    关于float很早就接触了,下面结合一个小demo谈谈。 1:在页面布局中,假设有两个p,需求是两个p在同一排上;其中解决办法之一就是利用浮动, eg: 职位简介 职位名称:php工程师 工作经验:1-3年 招聘人数:10人 最低学历:不限 月薪:3000-5000元(个税计算) 年龄:不限 2:上…

    好文分享 2025年12月23日
    000
  • css动画和照片清晰度动画的实现方法介绍

    实例如下: 源代码: donghua.beijing{ border: 1px solid black; width: 100%; height: 800px; background: black; } .a1 img{ width: 100px; height: 100px; -webkit-fi…

    2025年12月23日
    000
  • css样式的巧妙方法进行总结

    针对之前遇到过的一些特殊样式的实现,我今天做个总结,目的有二:一是将这些方法记录下来,以便将来需要用到时查找使用。二为将这些大神们智慧的结晶发扬光大,让广大前端程序猿们能够少走弯路。此贴为更新帖,以后若有好的css样式技巧,小哥我会不定期更新。 一、块元素水平垂直居中(特别鸣谢:鑫生活。鑫哥出品必属…

    好文分享 2025年12月23日
    000
  • CSS实现进度条和订单进度条的方法

    简单地效果图如下:     CSS实现进度条: html结构: 70% css样式: 立即学习“前端免费学习笔记(深入)”; #progress{ width: 50%; height: 30px; border:1px solid #ccc; border-radius: 15px; margin…

    2025年12月23日
    000
  • CSS的相邻兄弟选择器用法示例讲解

    对于有相同父元素的相邻html元素查找便可以使用css的相邻兄弟选择器,这里我们就来看一下css的相邻兄弟选择器用法简单讲解: 可选择紧接在另一个元素后的元素,且二者有相同的父级元素 下面代码中,item2和item3会有效果,而item1不会有 HTML代码: item1 item2 item3 …

    2025年12月23日
    000
  • 利用CSS伪元素创建带三角形的提示框的实现技巧

    下面小编就为大家带来一篇利用css伪元素创建带三角形的提示框的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 CSS伪元素非常有用,它提供了一种无需多余的DOM元素来实现一些常见的功能的方法,以下利用其实现一个带三角形的tooltip。 下面是DOM结构:下面…

    好文分享 2025年12月23日
    000
  • CSS使用盒模型实例讲解分析

    盒子是css中的基础概念,我们需要使用它来配置元素的外观以及文档的整体布局。 1. 为元素应用内边距 应用内边距会在元素内容和边距之间添加空白。我们可以为内容盒的每个边界单独设置内边距,或者使用 padding 简写属性在一条声明中设置所有的值。 如果使用百分数值指定内边距,百分数总是根包含块的宽度…

    2025年12月23日 好文分享
    000
  • 浅谈CSS浮动的方法介绍

    元素的水平方向浮动,意味着元素只能左右移动而不能上下移动。 一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。 浮动元素之后的元素将围绕它。 浮动元素之前的元素将不会受到影响。   立即学习“前端免费学习笔记(深入)”; 正文 浮动是一种半脱离文档流的状态,他不像绝…

    2025年12月23日 好文分享
    000
  • css常用属性伪元素和伪元素的总结

    前面几遍中我们分别说到了id选择器和class选择器,以及它们的区别和联系,下面大家一起来探究一下神奇的为类和伪元素吧。 其实以前我对伪类和伪元素也是搞得稀里糊涂的,现在决定剥开它神秘的外衣,首先,究竟什么是伪类?什么是伪元素? 伪类和伪元素的理解: 官方解释: 伪类一开始只是用来表示一些元素的动态…

    好文分享 2025年12月23日
    000
  • 整理的最全的css clearfix清除浮动的方法

    css中经常使用clearfix清除浮动,作者列出了几个clearfix的不同的使用方法进行对比,需要的朋友可以参考下css clearfix清除浮动的方法.(css为什么要清除浮动(float)? 清除浮动的原理是什么) 一,什么是.clearfix 你只要到Google或者Baidu随便一搜&#…

    好文分享 2025年12月23日
    000
  • CSS样式覆盖规则的详细介绍

    大家都知道css的全称叫做“层叠样式表”,但估计很多人都不知道“层叠”二字的含义。其实,“层叠”指的就是样式的覆盖,当一个元素被运用上多种样式,并且出现重名的样式属性时,浏览器必须从中选择一个属性值,这个过程就叫“层叠”。样式覆盖(这种叫法更大众化些)遵循一定的规则,之前我对这个规则一直似懂非懂的,…

    好文分享 2025年12月23日
    000
  • 详细介绍CSS样式权值

    内联样式表(inline style)>内部样式表(internal style sheet)>外部样式表(external style sheet) 例外:但如果外部样式表放在内部样式表下边引用,则外部样式表>内部样式表; 1,内联样式表权值为1000; 2,ID选择器的权值为1…

    好文分享 2025年12月23日
    000
  • CSS实现三角效果的实例详解

    方法一:使用border来设置边框,元素有高度和宽度 .triangle { transform: rotate(45deg); display: block; width: 12px; height: 12px; border: 1px solid #9e9e9e; border-top-colo…

    2025年12月23日
    000
  • CSS之关于clearfix清除浮动方法

    一,什么是.clearfix 你只要到Google或者Baidu随便一搜”css清除浮动”,就会发现很多网站都讲到”盒子清除内部浮动时可以用到.clearfix”。 .clearfix:after { content: ” “; display: bl…

    好文分享 2025年12月23日
    000

发表回复

登录后才能评论
关注微信