响应式布局的五种方法

简介: 响应式布局是同一页面在不同的屏幕上有不同的布局,即只需要一套代码使页面适应不同的屏幕。

响应式布局是同一页面在不同的屏幕上有不同的布局,即只需要一套代码使页面适应不同的屏幕。

1.百分比布局

1.有父元素就相对于父元素

2.没有父元素就相对于视口的大小


举一个例子

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box2{
            width: 80%;
            height: 100px;
            background: red;
        }
        .box{
            width: 50%;
            height: 100px;
            background: yellow;
        }
        .box1{
            width: 50%;
            height: 50%;
            background: blue;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="box1"></div>
    </div>
    <div class="box2"></div>
</body>
</html>

2.rem布局

rem(font size of the root element)是指相对于根元素的字体大小的单位,rem只是一个相对单位


rem和em的对比

  1. rem和em都是相对单位
  2. rem相对于根元素
  3. em相对于父元素


例如

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title> %和rem 布局</title>
    <style>
        html {
            font-size: 30px;
        }
        .box {
            font-size: 10px;
        }
        .box2 {
            width: 10rem;
            height: 10rem;
            background-color: plum;
        }
        .box {
            width: 10em;
            height: 10em;
            background-color: aquamarine;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="box1"></div>
    </div>
    <div class="box2"></div>
</body>
</html>

3. 媒体查询 @media screen

例如

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>@media screen</title>
    <style>
        .box {
            width: 10rem;
            height: 10rem;
            background-color: pink;
            margin-left: 20rem;
        }
        /*  如果屏幕的宽大于1200px,它执行此css */
        @media screen and (min-width: 1200px) {
            html {
                font-size: 20px;
            }
        }
        /*  如果屏幕的宽小于1200px,它执行此css */
        @media screen and (max-width: 1200px) {
            html {
                font-size: 10px;
            }
        }
    </style>
</head>
<body>
    <div class="box"></div>
</body>
</html>

4. flex布局

5.vw 和 vh

vw表示相对于视图窗口的宽度,vh表示相对于视图窗口高度,除了vw和vh外,还有vmin和vmax两个相关的单位。各个单位具体的含义如下:


例如

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box{
            width: 100vw;
            height: 100vh;
            background: red;
        }
        .box1{
            width: 50vw;
            height: 50vh;
            background: blue;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="box1">
        </div>
    </div>
</body>
</html>


相关文章
|
6月前
移动端的布局如何使用媒体查询
移动端的布局如何使用媒体查询
90 2
|
11天前
|
UED 容器
使用Flexbox布局实现响应式设计
【10月更文挑战第27天】
|
6月前
|
UED 开发者 容器
【专栏】Flexbox是CSS3的全新布局模式,提供灵活响应式的页面设计
【4月更文挑战第27天】Flexbox是CSS3的全新布局模式,提供灵活响应式的页面设计。其特点包括灵活性、响应式和易理解,通过主轴和交叉轴控制元素排列对齐。核心概念有容器和项目,常用于导航栏、卡片布局、响应式设计、表格和表单布局。关键属性如flex-direction定义主轴方向,justify-content和align-items控制对齐,flex属性调整项目伸缩,order改变排序。在实践中,要关注响应式、代码维护和浏览器兼容性,以优化布局和用户体验。
165 4
|
6月前
|
编解码 小程序 前端开发
在小程序中实现自适应布局或响应式设计
在小程序中实现自适应布局或响应式设计
|
6月前
|
小程序 前端开发 JavaScript
使用CSS的媒体查询功能在小程序中实现自适应布局
使用CSS的媒体查询功能在小程序中实现自适应布局
|
6月前
|
编解码 前端开发 iOS开发
响应式布局
响应式布局
|
6月前
|
前端开发 JavaScript API
掌握CSS Flexbox,打造完美响应式布局,适配各种设备!
欢迎来到前端入门之旅!这个专栏是为那些对Web开发感兴趣、刚刚开始学习前端的读者们打造的。无论你是初学者还是有一些基础的开发者,我们都会在这里为你提供一个系统而又亲切的学习平台。我们以问答形式更新,为大家呈现精选的前端知识点和最佳实践。通过深入浅出的解释概念,并提供实际案例和练习,让你逐步建立起一个扎实的基础。无论是HTML、CSS、JavaScript还是最新的前端框架和工具,我们都将为你提供丰富的内容和实用技巧,帮助你更好地理解并运用前端开发中的各种技术。
|
6月前
|
编解码 前端开发
响应式设计布局要不要了解一下?
响应式设计布局要不要了解一下?
40 0
|
编解码 前端开发 Android开发
前端页面布局之【响应式布局】
前端页面布局之【响应式布局】
69 0
响应式布局--媒体查询
响应式布局--媒体查询
65 0