道招

css的margin省略规则

如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!

css的margin省略规则

使用margin属性是用来设置对象四边的外边距,如果提供全部四个参数,将按上-右-下-左的顺序作用于四边,即:

margin-top
margin-right
margin-bottom
margin-left

记住这个模式的好的途径是:这4个值从元素顶端开始,顺时针围绕元素。值总是按照这个顺序被使用,因此若想得到预期的效果,必须正确地排序它们。

为什么会省略?有时,为margin输入的值有些重复:

p {
    margin:0.25em 1em 0.25em 1em;
}

为了那些懒人少输入这些烦人的代码(不知道这是否是初衷,但肯定有这样的懒人),或许更实际的些是为了减小css文件的字节数,以减小带宽占用,节省经济支出,w3c的成员们想出了更简单的替代方法,不必这样重复输入一对值,可以用下面的标记来代替它:

p {
    margin:0.25em 1em;
}

这样的两个值足以代替那四个值,是怎么做的呢?

省略原则

css定义了几个步骤以接收少于四个的margin参数: 1.如果没有left值,则使用right代替。 2.如果没有bottom值,则使用top代替。 3.如果没有right值,则使用top值代替。

换句话来说,如果给margin赋了三个值,则第四个(left)由复制第二个(right)得到。如果给出了两个,则第四个由复制第二个得到,第三个(bottom)由复制第一个(top)得到。最后,如果只给出了一个值,那么将被复制到其他三个。

举三个例子你应该更加清楚了:

  1. b {margin:10px;}b {margin:10px 10px 10px 10px;}是等价的;

  2. b {margin:10px 5px;}b {margin:10px 5px 10px 5px;}是等价的;

  3. b {margin: 5px 3px 4px;}b {margin:5px 3px 4px 3px;}是等价的;

有了这些原则的指引之后,我想你在编写css的时候头脑中对于margin属性中参数的省略的思路应该更加清晰了吧!

Original resource:Click here

更新时间:
上一篇:学习java,其他计划搁浅下一篇:曝ios的bug,求鉴定

相关文章

用div+css模拟类excel表格对角线(斜线)

我们先看html代码吧 <table> <caption>用div+css模拟类excel表格对角线(斜线)</caption> <t 阅读更多…

前端如何用一行代码将网站置灰

在悲伤的日子里,很多大型网站会把网站整体置灰,或者把首页置灰,怎么做到的呢,肯定不是一个一个来设置,只用在外层容器上加个css即可。 html { filter: grayscale( 阅读更多…

《浏览器工作原理与实践》笔记之CSS、JS阻塞DOM合成场景分析

当从服务器接收HTML页面的第一批数据时,DOM解析器就开始工作了。 我们先看第一种情况在解析过程中,如果遇到了JS脚本,如下所示: <html> <body&g 阅读更多…

关注道招网公众帐号
友情链接
消息推送
道招网关注互联网,分享IT资讯,前沿科技、编程技术,是否允许文章更新后推送通知消息。
允许
不用了