CSS(五)——边框0.5问题&中间自适应问题

931 阅读1分钟

边框0.5需求

  • 一般不支持边框0.5这种设置

分析

  • 可以利用transform scale(0.5)缩放
  • 缩放会造成所有元素都都缩放并不仅仅是边框
  • 给div添加一个伪元素

代码

!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
    #container{
        height: 400px;
        width: 400px;
        transform: scale(0.5);
        transform-origin: 0px,0px;
    }
    #container::after{
        content: " ";
        display: block;
        height: 800px;
        width: 800px;
        border: 1px solid red;  
        
        /* 不能对当前元素进行缩放,会把所有元素都进行缩放了。只能通过添加伪元素的方法进行缩放 */
    }
    
        
    
    </style>
</head>
<body>
    <div id="container">
        <div></div> 
    </div>
</body>
</html>

中间自适应需求

  • 三列布局要求应用flex进行三列布局
  • 左右两侧大小固定,中间自适应
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=
    , initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        #parent{
            height: 200px;
            width: 100%;
            display: flex;
        }
        #parent>div:first-child{
            height: 200px;
            width: 200px;
            background: blueviolet;
            
        }
        #parent>div:nth-child(2){
            flex: 1;
            height: 200px;
            
            background: aquamarine;
        }
        #parent>div:nth-child(3){
            
            height: 200px;
            width: 200px;
            background: pink;
            
        }
    
    </style>
</head>
<body>
    <div id="parent">
        <div></div>
        <div></div>
        <div></div>
    </div>
</body>
</html>