CSS 媒体功能 - width



CSS 媒体特征 width 用于确定视口(浏览器的查看区域)的宽度(水平尺寸)。

width 媒体功能还可以与 min-width max-width 属性一起使用,以设置视口的最小和最大宽度。

可能的值

  • <length> - 视口的宽度由特定的长度值表示,例如像素(px)等。

语法


@media (width: <length>){
	 	//CSS styles
}

CSS width - <length> 值

以下示例演示了当屏幕宽度为 200px 时,宽度媒体功能可将背景颜色更改为粉红色 -


<html>
<head>
<style>
	 	iframe {
	 	 	 display: block;
	 	}
</style>
</head>
<body>
	 	
	 	<label id="labelWidth" for="height">Width: 100</label>
	 	<input id="width" name="width" type="range" min="100" max="300" step="5" value="100" />
	 	
	 	<iframe
	 	id="block"
	 	srcdoc="<style> @media (width: 200px) { div { background: pink; } } </style><div>To see the effect resize your viewport's width is 200px.</div>">
	 	</iframe>
	 	 		
	 	<script>
	 	 	 const updateSize = (size, label) => {
	 	 	 	 	block.style[size] = `${eval(size).value}px`;
	 	 	 	 	label.textContent = `${size}: ${eval(size).value}`;
	 	 	 };
	 	 	 width.oninput = () => updateSize("width", labelWidth);
	 	</script>
</body>
</html> 		

CSS width - min-width 变体

以下示例演示了当屏幕宽度大于或等于 200px 时,最小宽度媒体功能将背景颜色更改为红色 -


<html>
<head>
<style>
	 	iframe {
	 	 	 display: block;
	 	}
</style>
</head>
<body>
	 	
	 	<label id="labelWidth" for="height">Width: 200</label>
	 	<input id="width" name="width" type="range" min="100" max="300" step="5" value="200" />
	 	
	 	<iframe
	 	id="block"
	 	srcdoc="<style> @media (min-width: 200px) { div { background: red; } } </style><div>To see the effect resize your viewport's width.</div>">
	 	</iframe>
	 	 		
	 	<script>
	 	 	 const updateSize = (size, label) => {
	 	 	 	 	block.style[size] = `${eval(size).value}px`;
	 	 	 	 	label.textContent = `${size}: ${eval(size).value}`;
	 	 	 };
	 	 	 width.oninput = () => updateSize("width", labelWidth);
	 	</script>
</body>
</html> 	

CSS width - max-width 变体

以下示例演示了 max-width 媒体功能,当屏幕宽度小于或等于 250px 时,将背景颜色更改为粉红色 -


<html>
<head>
<style>
	 	iframe {
	 	 	 display: block;
	 	}
</style>
</head>
<body>

	 	<label id="labelWidth" for="height">Width: 100</label>
	 	<input id="width" name="width" type="range" min="100" max="300" step="5" value="100" />
	 	
	 	<iframe
	 	id="block"
	 	srcdoc="<style> @media (max-width: 250px) { div { background: pink; } } </style><div>To see the effect resize your viewport's width.</div>">
	 	</iframe>
	 	 		
	 	<script>
	 	 	 const updateSize = (size, label) => {
	 	 	 	 	block.style[size] = `${eval(size).value}px`;
	 	 	 	 	label.textContent = `${size}: ${eval(size).value}`;
	 	 	 };
	 	 	 width.oninput = () => updateSize("width", labelWidth);
	 	</script>
</body>
</html>