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>
相关推荐
Fanfffff7204 小时前
前端样式局部作用域:从Scoped到CSS Modules 的完整指南
前端·css
低保和光头哪个先来6 小时前
如何实现弹窗的 双击关闭 & 拖动 & 图层优先级
前端·javascript·css·vue.js
DarkBule_9 小时前
0成本get可信域名:dpdns.org公益域名获取全攻略
css·学习·html·github·html5
营赢盈英10 小时前
How to detect if <html> tag has a class in child Angular component
前端·javascript·css·html·angular.js
!win !10 小时前
从一个按钮实例入门CSS in JS之styled-components
css·react
xw510 小时前
从一个按钮入门CSS in JS之styled-components
css·react.js
青衫码上行11 小时前
【JavaWeb学习 | 第二篇】CSS(1) - 基础语法与核心概念
前端·css·学习
重铸码农荣光11 小时前
用 CSS 动画实现情侣小球互动:从基础布局到高级动效的完整思路
css·html
Qinana12 小时前
💖用 CSS 打造会“亲吻”的动画小球
前端·css
华仔啊1 天前
这个Vue3旋转菜单组件让项目颜值提升200%!支持多种主题,拿来即用
前端·javascript·css