百科狗-知识改变命运!

margin - 外边距复合属性 - css 外边距

梵高2年前 (2023-11-21)阅读数 30#技术干货
文章标签浏览器

margin

margin属性为给定元素设置所有四个(上下左右)方向的外边距属性。这是四个外边距属性设置的简写。四个外边距属性设置分别是:margin-topmargin-rightmargin-bottommargin-left。指定的外边距允许为负数。margintopbottom属性对非替换内联元素无效,例如

浏览器支持

浏览器都支持margin

语法

margin:/*所有边缘*/举例: margin: 1em;
margin:/*纵向横向*/举例: margin: 5% auto;
margin:/*上横向下*/举例: margin: 1em auto 2em;
margin:/*上右下左*/举例: margin: 2px 1em 0 auto;
margin:inherit

接受1~4个可选参数,每个参数取值如下:

margin - 外边距复合属性 - css 外边距

  • 只有一个值时,这个值会被指定给全部的四个边
  • 两个值时,第一个值被匹配给上和下,第二个值被匹配给左和右
  • 三个值时,第一个值被匹配给上,第二个值被匹配给左和右,第三个值被匹配给下
  • 四个值时,会依次按上、右、下、左的顺序匹配(即顺时针顺序)

取值:

| |auto
  • auto:浏览器会自动选择一个合适的margin来应用。它可以用于将一个块居中。
  • :获知可用的计数单位。
  • :相对于该元素的包含块的宽度(相对于该块的百分比)。该值可以为负数。

实例

在现代浏览器中,如果要把一些东西水平居中,使用display:flex;justify-content: center;然而,在一些老的浏览器,如IE8-9,这些是不可用的。想要把一个元素在其父元素中居中,使用margin: 0 auto;

margin: 5%;                /* 所有的边都是 5% 的边距 */
margin: 10px;              /* 所有的边都是 10像素 的边距 */
margin: 1.6em 20px;        /* 上和下边是 1.6字距, 左和右是 20像素 边距 */
margin: 10px 3% 1em;       /* 上边 10像素, 左和右 3%, 下边 1字距 边距 */
margin: 10px 3px 30px 5px; /* 上边 10像素, 右边 3像素, bottom 30px, left 5px margin */
margin: 1em auto;          /* 上和下边 1字距 边距, 该盒子是水平居中的 */
margin: auto;              /* 该盒子是水平居中的, 上下边距为0 */
//html

margin: auto; background: gold; width: 66%;
margin: 20px 0 0 -20px; background: gold; width: 66%;
//CSS .ex1 { margin: auto; background: gold; width: 66%; } .ex2 { margin: 20px 0px 0 -20px; background: gold; width: 66%; }

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)