zoukankan      html  css  js  c++  java
  • 深入剖析 css

    一:border

    知识点:border-width的宽度是不支持百分比的:像margin,padding设置百分比是会随着屏幕的大小而变化的 但是border的大小无论屏幕多大他的宽度基本上是固定的 所以只能设置px而不能设置%

    应用:1.菜单的三条杠

    .menu{
        width:120px;
        height:20px;
        border-top:60px double;
        border-bottom:20px solid;
        padding-top:20px;
        color:#999  
    }

    2.三角形&梯形 (去掉宽高 就是正方形,修改border-color的四个角的颜色为transparent就是三角形)

    {
    width:40px;
    height:40px;                           
    border-width:10px;
    border-style:solid;
    border-color:pink red blue green;     
    }
    {
        /*  40px; */
        /* height: 40px; */
        border-width: 10px;
        border-style: solid;
        border-color: red transparent;
    }

     二:margin

    1.margin会修改可视区域的尺寸

    适用场景:适用于没用设定width/height的普通的block水平元素;只适用于水平方向的尺寸

    2.百分比margin的计算规则

    ①:普通元素的百分比margin都是相对于容器的宽度计算的

    ②:绝对定位元素的百分比margin值是相对于第一个定位祖先元素(relative/absolute/fixed)的宽度计算的

    3.margin:auto

    原本应该填充的尺寸被width/height强制变更,而margin:auto就是为了填充这个变更的尺寸设计的;如果一侧定值,一侧auto,auto为剩余空间的大小,如果两侧均是auto,则平分剩余空间,左右均是auto,则居中显示

    //图片居中问题
    img{width:200px;margin:0 auto}  //不可以居中
    因为此时图片是inline水平,就算没有width,它也不会占据整个容器,就不能均分
    
    img{display:block;width:200px;margin:0 auto} //可以居中
    因为此时图片是block,就算没有width,也会占据整个容器,这样就可以均分

    实现水平垂直功能

    .father{height:200px;position:relative}
    .son{position:absolute;top:0;right:0;bottom:0;left:0;width:500px;height:100px;margin:auto}
    
    //width/height限制了absolute元素自动填满容器 而margin:auto自动平分被变更的尺寸空间,可以实现水平垂直居中

     4.margin 失效情况

    (1). inline水平元素的垂直margin无效

    有两个前提.①.非替换元素,例如,不是<img>元素 ②.正常书写模式 <span style="margin:200px"> margin无效</span>

    (2). display:table-cell / display:table-row 等声明的margin无效

    (3).绝对定位元素非定位方向的margin值 “无效”

    //看似无效,实则微妙
    给容器添加position:relative 再加margin值就有效了
    
    // 非定位方向
    position:absolute;
    top:10px;
    margin-top:10px;  //有效
    margin-left:20px;   //无效
  • 相关阅读:
    reduce()、filter()、map()、some()、every()、...展开属性
    react的this.setState详细介绍
    HDU
    The 2015 ACM-ICPC Asia Beijing Regional Contest
    Ubuntu 14.04 安装 WPScan
    蓝桥杯-历届试题-公式求值
    Ubuntu下快速搭建ACdream Online Judge v1.5.3
    Codeforces Round #290 (Div. 2)
    SOJ
    SOJ
  • 原文地址:https://www.cnblogs.com/alhh/p/10287203.html
Copyright © 2011-2022 走看看