css3响应式布局利器之容器查询

css3响应式布局利器之容器查询

容器查询是CSS中最受关注和要求的功能之一。可能大家接触过media query媒体查询,它可以根据不同设备的可视面积来设置css样式,那么容器查询到底是什么?

一、什么是容器查询

容器查询是可以帮助我们根据容器的内容(例如宽度和高度)来设置其内容样式的查询。这与媒体查询采用的方法不同,媒体查询可以帮助我们根据视口的更改来设置网页/网站的样式。

截至2020年,容器查询目前尚未在CSS中使用,但是我们真的需要正式添加容器才能获得附带的一些优势吗?

好吧,不完全是。我们可以进行一些调整,以在代码中实现类似容器查询的行为。我们将在下面介绍其中的一些。

二、flexbox实现容器查询

使用flexbox进行容器查询

Flexbox是一种单向布局模型,可让我们创建响应速度更快的网站。

在本文中,我们将使用一种基于flexbox的技术,以模仿容器查询。我们的目标是使用flexbox创建三列,并将它们全部移至具有特定容器宽度的行。代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>container queries</title>
    <style>
        .container {
            display: flex;
            flex-wrap: wrap;
            gap: 1em;

        }
        .child {
            flex-basis: calc( calc(500px - 100%) * 999);;
            flex-grow: 1;
            background: rgb(231, 227, 227);
            padding: 1em;
            font-size: 18px;
        }

        .child1 {
            display: flex;
            flex-wrap: wrap;
        }
        .child1 p {
            flex-basis: calc( calc(400px - 100%) * 999);
            flex-grow: 1;
        }
    </style>
</head>
<body>
    <div class="container">
        <div class="child child1">
            <p>
                Lorem ipsum, dolor sit amet consectetur adipisicing elit. Ducimus, perferendis!
            </p>
        ...

点击查看剩余70%

{{collectdata}}

网友评论0