CSS媒体类型

1.1媒体查询语法

媒体查询由一种媒体类型组成,并可包含一个或多个表达式,这些表达式可以解析为 true 或 false。

@media not|only mediatype and (expressions) {
CSS-Code;
}

如果指定的媒体类型与正在显示文档的设备类型匹配,并且媒体查询中的所有表达式均为 true,则查询结果为 true。当媒体查询为 true 时,将应用相应的样式表或样式规则,并遵循正常的级联规则。除非使用 not 或 only 运算符,否则媒体类型是可选的,且隐含 all 类型。

还可以针对不同的媒体使用不同的样式表:

<link rel="stylesheet" media="mediatype and|not|only (expressions)" href="print.css">

1.2媒体查询的简单实例

使用媒体查询的一种方法是在样式表内有一个备用的 CSS 部分。
下面的例子在视口宽度为 480 像素或更宽时将背景颜色更改为浅绿色(如果视口小于 480 像素,则背景颜色会是粉色):

body {
background-color: pink;
}
@media screen and (min-width: 480px) {
body {
background-color: lightgreen;
}
}

下例显示了一个菜单,如果视口的宽度为 480 像素或更宽,则该菜单会浮动到页面的左侧(如果视口小于 480 像素,则该菜单将
位于内容的顶部):

#leftsidebar { width: 100%; float: none; }
#main { margin-left: 0; }
@media screen and (min-width: 480px) {
#leftsidebar { width: 200px; float: left; }
#main { margin-left: 216px; }
}

1.3菜单的媒体查询

使用媒体查询来创建响应式导航菜单,该菜单在不同的屏幕尺寸上会有所不同。

大型屏幕:

 小型屏幕:

 核心代码:

.
topnav {
overflow: hidden;
background-color: #dddddd;
}
.
topnav a {
color: #333333;
line-height: 50px;
float: left;
display: block;
text-align: center;
padding: 0 16px;
text-decoration: none;
}
.
topnav a.on {
color: white;
background-color: darkcyan;
}
@media screen and (max-width: 600px) {
.
topnav a {
text-align: left;
line-height: 40px;
float: none;
width: 100%;
}
}

1.4列的媒体查询

媒体查询的常见用法是创建弹性布局。在本例中,我们创建了一个布局,该布局在四列、两列和全宽列之间变化,具体取决于不同的屏幕尺寸:

大型屏幕:

 中等屏幕:

小型屏幕: 

核心代码:

.
column {
width: calc(25% - 20px);
float: left;
color: white;
font-size: 30px;
line-height: 50px;
text-align: center;
background-color: lightgray;
margin: 0 10px;
}
@media screen and (max-width: 992px) {
.
column {
width: calc(50% - 20px);
}
}
@media screen and (max-width: 600px) {
.
column {
width: 100%;
}
}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CSS媒体查询是一种在网页开发中用于根据不同的设备类型和屏幕尺寸应用不同样式的方法。媒体查询可以在link元素的href属性中或者样式表中使用。在link元素中的CSS媒体查询示例:`<link rel="stylesheet" media="(min-width: 800px)" href="example.css" />`,在样式表中的CSS媒体查询示例:`@media (max-width: 600px) { .class { display: none; } }`。媒体查询包含一个可选的媒体类型媒体特性表达式,如果媒体类型匹配展示文档所使用的设备类型,并且所有的表达式的值都是true,那么该媒体查询的结果为true。对于不支持CSS媒体查询的浏览器,可以使用Respond.js库来实现媒体查询的功能。Respond.js能够解析媒体查询并根据屏幕尺寸应用相应的样式。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [媒体查询的使用](https://blog.csdn.net/li_chun_can/article/details/119804937)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [CSS媒体查询详细解读](https://blog.csdn.net/renqianying325/article/details/103653298)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值