← 返回首页
CSS3基础教程(十八)
发表时间:2020-03-12 12:55:29
讲解CSS3的媒体查询

CSS3增加媒体查询功能,使用 @media 查询,可以针对不同的媒体类型定义不同的样式。特别是如果你需要设置设计响应式的页面,@media 是非常有用的。当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面。

基本语法:

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

1.常见媒体类型

描述
all 用于所有设备
print 用于打印机和打印预览
screen 用于电脑屏幕,平板电脑,智能手机等。最常用
speech 应用于屏幕阅读器等发声设备

2.综合实例

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <title>媒体查询案例</title>
    <style>
        body {
            font-family:"Lucida Sans", Verdana, sans-serif;
        }
        .main img {
            width:100%;
        }
        h1{
            font-size:1.625em;
        }
        h2{
            font-size:1.375em;
        }
        .header {
            padding:1.0121457489878542510121457489879%;
            background-color:#f1f1f1;
            border:1px solid #e9e9e9;
        }
        .menuitem {
            margin:4.310344827586206896551724137931%;
            margin-left:0;
            margin-top:0;
            padding:4.310344827586206896551724137931%;
            border-bottom:1px solid #e9e9e9;
            cursor:pointer;
        }
        .main {
            padding:2.0661157024793388429752066115702%;
        }
        .right {
            padding:4.310344827586206896551724137931%;
            background-color:#CDF0F6;
        }
        .footer {
            padding:1.0121457489878542510121457489879%;
            text-align:center;
            background-color:#f1f1f1;
            border:1px solid #e9e9e9;
            font-size:0.625em;
        }
        .gridcontainer {
            width:100%;
        }
        .gridwrapper {
            overflow:hidden;
        }
        .gridbox {
            margin-bottom:2.0242914979757085020242914979757%;
            margin-right: 2.0242914979757085020242914979757%;
            float:left;
        }
        .gridheader {
            width:100%;
        }
        .gridmenu {
            width:23.481781376518218623481781376518%;
        }
        .gridmain {
            width:48.987854251012145748987854251012%;
        }

        .gridright {
            width:23.481781376518218623481781376518%;
            margin-right:0;
        }
        .gridfooter {
            width:100%;
            margin-bottom:0;
        }
        @media only screen and (max-width: 500px) {
            .gridmenu {
                width:100%;
            }
            .menuitem {
                margin:1.0121457489878542510121457489879%;
                padding:1.0121457489878542510121457489879%;
            }
            .gridmain {
                width:100%;
            }
            .main {
                padding:1.0121457489878542510121457489879%;
            }
            .gridright {
                width:100%;
            }
            .right {
                padding:1.0121457489878542510121457489879%;
            }
            .gridbox {
                margin-right:0;
                float:left;
            }
        }
    </style>
</head>
<body>
<div class="gridcontainer">
    <div class="gridwrapper">
        <div class="gridbox gridheader">
            <div class="header">
                <h1>响应式的页面案例</h1>
            </div>
        </div>
        <div class="gridbox gridmenu">
            <div class="menuitem">The Drive</div>
            <div class="menuitem">The Walk</div>
            <div class="menuitem">The Return</div>
            <div class="menuitem">The End</div>
        </div>
        <div class="gridbox gridmain">
            <div class="main">
                <h1>The Walk</h1>
                <p>The walk to the Pulpit Rock will take you approximately two hours, give or take an hour depending on the weather conditions and your physical shape.</p>
                <img src="http://img.simoniu.com/pulpitrock.jpg" alt="Pulpit rock" width="" height="">

            </div>
        </div>
        <div class="gridbox gridright">
            <div class="right">
                <h2>What?</h2>
                <p>The Pulpit Rock is a part of a mountain that looks like a pulpit.</p>
                <h2>Where?</h2>
                <p>The Pulpit Rock is in Norway</p>
                <h2>Price?</h2>
                <p>The walk is free!</p>
            </div>
        </div>
        <div class="gridbox gridfooter">
            <div class="footer">
                <p>This web page is a part of a demonstration of fluid web design made by www.w3schools.com. Resize the browser window to see the content response to the resizing.</p>
            </div>
        </div>
    </div>
</div>
</body>
</html>

运行效果:

PC窗口浏览效果如下

手机窗口浏览效果如下