文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

CSS中怎么利用margin属性设置外边距

2024-04-02 19:55

关注

今天就跟大家聊聊有关CSS中怎么利用margin属性设置外边距,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

CSS外边距

围绕在元素边框的空白区域是外边距。设置外边距会在元素外创建额外的“空白”。设置外边距的最简单的方法就是使用margin属性,这个属性接受任何长度单位、百分数值甚至负值。

CSS margin属性

设置外边距的最简单的方法就是使用margin属性。

margin属性接受任何长度单位,可以是像素、英寸、毫米或em。

margin可以设置为auto。更常见的做法是为外边距设置长度值。下面的声明在h2元素的各个边上设置了1/4英寸宽的空白:

h2{margin:0.25in;}下面的例子为h2元素的四个边分别定义了不同的外边距,所使用的长度单位是像素(px):

h2{margin:10px0px15px5px;}与内边距的设置相同,这些值的顺序是从上外边距(top)开始围着元素顺时针旋转的:

margin:toprightbottomleft另外,还可以为margin设置一个百分比数值:

p{margin:10%;}百分数是相对于父元素的width计算的。上面这个例子为p元素设置的外边距是其父元素的width的10%。

margin的默认值是0,所以如果没有为margin声明一个值,就不会出现外边距。但是,在实际中,浏览器对许多元素已经提供了预定的样式,外边距也不例外。例如,在支持CSS的浏览器中,外边距会在每个段落元素的上面和下面生成“空行”。因此,如果没有为p元素声明外边距,浏览器可能会自己应用一个外边距。当然,只要你特别作了声明,就会覆盖默认样式。

值复制

还记得吗?我们曾经在前两节中提到过值复制。下面我们为您讲解如何使用值复制。

有时,我们会输入一些重复的值:

p{margin:0.5em1em0.5em1em;}通过值复制,您可以不必重复地键入这对数字。上面的规则与下面的规则是等价的:

p{margin:0.5em1em;}这两个值可以取代前面4个值。这是如何做到的呢?CSS定义了一些规则,允许为外边距指定少于4个值。规则如下:

如果缺少左外边距的值,则使用右外边距的值。
如果缺少下外边距的值,则使用上外边距的值。
如果缺少右外边距的值,则使用上外边距的值。

下图提供了更直观的方法来了解这一点:

CSS中怎么利用margin属性设置外边距

换句话说,如果为外边距指定了3个值,则第4个值(即左外边距)会从第2个值(右外边距)复制得到。如果给定了两个值,第4个值会从第2个值复制得到,第3个值(下外边距)会从第1个值(上外边距)复制得到。***一个情况,如果只给定一个值,那么其他3个外边距都由这个值(上外边距)复制得到。

利用这个简单的机制,您只需指定必要的值,而不必全部都应用4个值,例如:

h2{margin:0.25em1em0.5em;}   h3{margin:0.5em1em;}    p{margin:1px;}   

这种办法有一个小缺点,您***肯定会遇到这个问题。假设希望把p元素的上外边距和左外边距设置为20像素,下外边距和右外边距设置为30像素。在这种情况下,必须写作:

p{margin:20px30px30px20px;}这样才能得到您想要的结果。遗憾的是,在这种情况下,所需值的个数没有办法更少了。

再来看另外一个例子。如果希望除了左外边距以外所有其他外边距都是auto(左外边距是20px):

p{margin:autoautoauto20px;}同样的,这样才能得到你想要的效果。问题在于,键入这些auto有些麻烦。如果您只是希望控制元素单边上的外边距,请使用单边外边距属性。

单边外边距属性

您可以使用单边外边距属性为元素单边上的外边距设置值。假设您希望把p元素的左外边距设置为20px。不必使用margin(需要键入很多auto),而是可以采用以下方法:

p{margin-left:20px;}您可以使用下列任何一个属性来只设置相应上的外边距,而不会直接影响所有其他CSS外边距:

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

一个规则中可以使用多个这种单边属性,例如:

h3{  margin-top:20px;  margin-right:30px;  margin-bottom:30px;  margin-left:20px;  }

当然,对于这种情况,使用margin可能更容易一些:

p{margin:20px30px30px20px;}不论使用单边属性还是使用margin,得到的结果都一样。一般来说,如果希望为多个边设置外边距,使用margin会更容易一些。不过,从文档显示的角度看,实际上使用哪种方法都不重要,所以应该选择对自己来说更容易的一种方法。

提示和注释

提示:Netscape和IE对body标签定义的默认边距(margin)值是8px。而Opera不是这样。相反地,Opera将内部填充(padding)的默认值定义为8px,因此如果希望对整个网站的边缘部分进行调整,并将之正确显示于Opera中,那么必须对body的padding进行自定义。

看完上述内容,你们对CSS中怎么利用margin属性设置外边距有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网行业资讯频道,感谢大家的支持。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯