CSS3_媒体查询(十一)

CSS3_响应式布局

1、媒体样式

在不同媒体上显示不同的样式。

常用阈值:

  • 小于768px:小屏幕;
  • 768px-992px:中等屏幕;
  • 992px-1200px:大屏幕;
  • 大于1200px:超大屏幕。
html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <title>查询媒体类型</title>
    <style>
        h1 {
            width: 300px;
            height: 300px;
            line-height: 300px;
            background-image: linear-gradient(30deg, red, yellow, green);
            margin: 0 auto;
            text-align: center;
            font-size: 30px;
            color: white;
            text-shadow: 0 0 10px black;
        }

        /* 只有在打印机上才应用的样式 */
        @media print {
            h1 {
                background: transparent;
            }
        }

        /* 只有在屏幕上才应用的样式 */
        @media screen {
            h1 {
                font-family: "Forte";
            }
        }

        /* 在所有情况下都使用的字体 */
        @media all {
            h1 {
                font-family: "Forte";
            }
        }
    </style>
</head>

<body>
    <h1>测试文本</h1>
</body>

</html>
2、媒体特性

根据媒体视口的大小和媒体宽度进行样式的变化。

  • width:检测视口宽度;
  • max-width:检测视口最大宽度;
  • min-width:检测视口最小宽度;
  • height:检测视口高度;
  • max-height:检测视口最大高度;
  • min-height:检测视口最小宽度;
  • device-width:检测屏幕的宽度;
  • max-device-width:检测屏幕的最大宽度;
  • min-device-width:检测屏幕的最小宽度;
  • orientation:检测视口的旋转方向
    • portrait:视口处于纵向,高度大于宽度;
    • landscape:视口处于横向,宽度大于高度。
html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <title>媒体类型</title>
    <style>
        div {
            background-color: aqua;
            height: 200px;
            line-height: 200px;
            text-align: center;
            font-size: 50px;
        }

        /* 视口宽度小于700px的时候背景设置为黄色 */
        @media (max-width:700px) {
            div {
                background-color: yellow;
            }
        }

        /* 视口宽度大于900px的时候背景设置为蓝色 */
        @media (min-width:900px) {
            div {
                background-color: blue;
            }
        }

        /* 视口宽度为500px的时候背景设置为红色 */
        @media (width:500px) {
            div {
                background-color: red;
            }
        }

        /* 只有设备宽度为2560px(因为2560缩放了1.25倍)时,才会生效 */
        @media (device-width:2048px) {
            div {
                background-color: black;
            }
        }
    </style>
</head>

<body>
    <div>
        <p>示例文本</p>
    </div>
</body>

</html>
3、运算符

可以通过运算符将媒体特性联系在一起:

  • and:并且;
  • , 或者 or:或;
  • not:否定;
  • only:肯定。
html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <title>运算符</title>
    <style>
        div {
            height: 300px;
            background-color: antiquewhite;
        }

        @media (min-width:600px) and (max-width:800px) {
            div {
                background-color: aqua;
            }
        }
    </style>
</head>

<body>
    <div>

    </div>
</body>

</html>
相关推荐
柚子8163 小时前
scroll-marker轮播组件不再难
前端·css
凌辰揽月6 小时前
7月10号总结 (1)
前端·css·css3
天天扭码6 小时前
很全面的前端面试——CSS篇(上)
前端·css·面试
sunbyte6 小时前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | DoubleVerticalSlider(双垂直滑块)
前端·javascript·css·vue.js·vue
Eighteen Z8 小时前
CSS揭秘:10.平行四边形
前端·css·css3
嘉琪00110 小时前
封装一个有最小化的dialog组件
前端·javascript·css
春秋半夏12 小时前
音乐播放、歌词滚动
前端·css
饮茶三千13 小时前
几个在开发中起大作用的CSS新特性!
前端·css
十盒半价17 小时前
Stylus 伪元素:让 CSS 玩出 “无中生有” 的新花样
前端·css·trae
Savior`L20 小时前
CSS知识复习5
前端·css