width

概述

width 属性指定了元素内容区的宽度. 内容区在元素padding,border和margin里面

min-widthmax-width 属性覆盖 width.

The min-width and max-width properties override width.

语法

width: 300px        /* <length> values */
width: 25em

width: 75%          /* <percentage> values */

width: border-box   /* Keyword values */
width: content-box
width: max-content
width: min-content
width: available
width: fit-content
width: auto

width: inherit

width属性也指定为:

<length>
用绝对值定义宽度
<percentage>
用百分比定义宽度
auto
浏览器将会为指定的元素计算并选择一个宽度.
max-content
固有的首选宽度.
min-content
固有的最小宽度.
fit-content
以下两种情况下的较大值:
  • 固有的最小宽度
  • 固有首选宽度(max-content)和可用宽度(available)的较小值

正式语法

auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)

where
<length-percentage> = <length> | <percentage>

示例

默认宽度

p.goldie {
  background: gold;
}
<p class="goldie">The Mozilla community produces a lot of great software.</p>

px 和 em

.px_length {
  width: 200px;
  background-color: red;
  color: white;
  border: 1px solid black;
}

.em_length {
  width: 20em;
  background-color: white;
  color: red;
  border: 1px solid black;
}
<div class="px_length">以 px 度量的宽度</div>
<div class="em_length">以 em 度量的宽度</div>

百分比

.percent {
  width: 20%;
  background-color: silver;
  border: 1px solid red;
}
<div class="percent">按照百分比度量的宽度</div>

max-content

p.maxgreen {
  background: lightgreen;
  width: intrinsic;           /* Safari/WebKit 使用了非标准的名称 */
  width: -moz-max-content;    /* Firefox/Gecko */
  width: -webkit-max-content; /* Chrome */
}
<p class="maxgreen">The Mozilla community produces a lot of great software.</p>

min-content

p.minblue {
  background: lightblue;
  width: -moz-min-content;    /* Firefox */
  width: -webkit-min-content; /* Chrome */
}
<p class="minblue">The Mozilla community produces a lot of great software.</p>

无障碍考虑

当页面放大以增加文本大小时,请确保width设置的元素不会被截断并且不会遮挡其他内容。

规范

规范 状态 注释
CSS Basic Box Model
width
Working Draft 增加 max-content, min-content, available, fit-content, border-box, content-box 关键字.
CSS Transitions
width
Working Draft width 列为可动画的.
CSS Level 2 (Revision 1)
width
Recommendation 明确应用到哪个元素.
CSS Level 1
width
Recommendation 最初规范.

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
widthChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 4Opera Full support 3.5Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0
AnimatableChrome Full support 26Edge Full support 12Firefox Full support 16IE Full support 11Opera Full support 15Safari Full support 6.1WebView Android Full support 4.4Chrome Android Full support 26Firefox Android Full support 16Opera Android Full support 14Safari iOS Full support 6.1Samsung Internet Android Full support 1.5
fill
ExperimentalNon-standard
Chrome Full support 46Edge Full support 79Firefox No support NoIE No support NoOpera Full support 33Safari Full support 12WebView Android Full support 46Chrome Android Full support 46Firefox Android No support NoOpera Android Full support 33Safari iOS Full support 12Samsung Internet Android Full support 5.0
fit-contentChrome Full support 46
Full support 46
Full support 22
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Edge Full support 79
Full support 79
Full support 79
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Firefox Full support 3
Prefixed
Full support 3
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
IE No support NoOpera Full support 33
Full support 33
Full support 15
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Safari Full support 11
Full support 11
Full support 6.1
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
WebView Android Full support 46Chrome Android Full support 46Firefox Android Full support 4
Prefixed
Full support 4
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
Opera Android Full support 33Safari iOS Full support 11
Full support 11
Full support 7
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Samsung Internet Android Full support 5.0
Alternate Name
Full support 5.0
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
max-contentChrome Full support 46
Full support 46
Full support 22
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Edge Full support 79
Full support 79
Full support 79
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Firefox Full support 66
Full support 66
Full support 3
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
IE No support NoOpera Full support 44Safari Full support 11
Full support 11
Full support 2
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
WebView Android Full support 46Chrome Android Full support 46Firefox Android Full support 66
Full support 66
Full support 4
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
Opera Android Full support 43Safari iOS Full support 11
Full support 11
Full support 1
Alternate Name
Alternate Name Uses the non-standard name: intrinsic
Samsung Internet Android Full support 5.0
min-contentChrome Full support 46
Full support 46
Full support 22
Alternate Name
Alternate Name Uses the non-standard name: min-intrinsic
Edge Full support 79
Full support 79
Full support 79
Alternate Name
Alternate Name Uses the non-standard name: min-intrinsic
Firefox Full support 66
Full support 66
Full support 3
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
IE No support NoOpera Full support 44Safari Full support 11
Full support 11
Full support 2
Alternate Name
Alternate Name Uses the non-standard name: min-intrinsic
WebView Android Full support 46Chrome Android Full support 46Firefox Android Full support 66
Full support 66
Full support 4
Prefixed
Prefixed Implemented with the vendor prefix: -moz-
Opera Android Full support 43Safari iOS Full support 11
Full support 11
Full support 1
Alternate Name
Alternate Name Uses the non-standard name: min-intrinsic
Samsung Internet Android Full support 5.0
stretch
Experimental
Chrome Full support 22
Alternate Name
Full support 22
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Edge Full support 79
Alternate Name
Full support 79
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Firefox Full support 3
Alternate Name
Full support 3
Alternate Name
Alternate Name Uses the non-standard name: -moz-available
IE No support NoOpera Full support 15
Alternate Name
Full support 15
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Safari Full support 6.1
Prefixed
Full support 6.1
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
WebView Android Full support 4.4
Alternate Name
Full support 4.4
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Chrome Android Full support 25
Alternate Name
Full support 25
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Firefox Android Full support 4
Alternate Name
Full support 4
Alternate Name
Alternate Name Uses the non-standard name: -moz-available
Opera Android Full support 14
Alternate Name
Full support 14
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available
Safari iOS Full support 6.1
Prefixed
Full support 6.1
Prefixed
Prefixed Implemented with the vendor prefix: -webkit-
Samsung Internet Android Full support 5.0
Alternate Name
Full support 5.0
Alternate Name
Alternate Name Uses the non-standard name: -webkit-fill-available

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
Uses a non-standard name.
Uses a non-standard name.
Requires a vendor prefix or different name for use.
Requires a vendor prefix or different name for use.

另请参见