• css 积累1


    1.position 取值。

    通常的回答是 staticrelativeabsolute 和 fixed 。当然,还有一个极少人了解的 sticky 。其实,除此之外, CSS 属性通常还可以设置下面几个值:

    • initial
    • inherit
    • unset
    • revert   

     

    题目1、下面这个图形,只使用一个标签,可以有多少种实现方式:

     

     

    假设我们的单标签是一个 div:

     

    1
    <div></div>

     

    定义如下通用CSS

     

    1
    2
    3
    4
    5
    6
    div{
        position:relative;
        width:200px;
        height:60px;
        background:#ddd;
    }

     

     

     

    法一:border

     

    这个应该是最最最容易想到的了

     

    1
    2
    3
    div{
        border-left:5px solid deeppink;
    }

     

     

     

    法二:使用伪元素

     

    一个标签,算上 before 与 after 伪元素,其实算是有三个标签,这也是很多单标签作图的基础,本题中,使用伪元素可以轻易完成。

     

    1
    2
    3
    4
    5
    6
    7
    8
    9
    div::after{
        content:"";
        width:5px;
        height:60px;
        position:absolute;
        top:0;
        left:0;
        background:deeppink;
    }

     

     

     

    法三:外 box-shadow

     

    盒阴影 box-shadow 大部分人都只是用了生成阴影,其实阴影可以有多重阴影、单侧阴影、阴影不可以不虚化,这就需要去了解一下 box-shaodw 的每一个参数具体作用。使用 box-shaodw 解题

     

    1
    2
    3
    div{
        box-shadow:-5px 0px 0 0 deeppink;
    }

     

     

     

    法四:内 box-shadow

     

    盒阴影还有一个参数 inset ,用于设置内阴影,也可以完成:

     

    1
    2
    3
    div{
        box-shadow:inset 5px 0px 0 0 deeppink;
    }

     

     

     

    法五:drop-shadow

     

    drop-shadow 是 CSS3 新增滤镜 filter 中的其中一个滤镜,也可以生成阴影,不过它的数值参数个数只有 3 个,比之 box-shadow 少一个。

     

    1
    2
    3
    div{
        filter:drop-shadow(-5px 0 0 deeppink);
    }

     

     

     

    法六:渐变 linearGradient

     

    灵活使用 CSS3 的渐变可以完成大量想不到的图形,CSS3 的渐变简单而言分为线性渐变和径向渐变,本题使用线性渐变,可以轻易解题:

     

    1
    2
    3
    div{
        background-image:linear-gradient(90deg, deeppink 0px, deeppink 5pxtransparent 5px);
    }

     

    其实,CSS3 渐变远不止线性渐变和径向渐变,细分下来,还有重复线性渐变(repeating-linear-gradient)和重复径向渐变(repeating-radial-gradient)以及已经被最新版本 Chrome 支持的圆锥渐变(conical-gradient),感兴趣可以自行去学习一下。

     

     

    法七:轮廓 outline

     

    这个用的比较少,outline (轮廓)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。这个方法算是下下之选。

     

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    div{
        height:50px;
        outline:5px solid deeppink;
    }
    div::after{
        position:absolute;
        content:"";
        top:-5px;
        bottom:-5px;
        right:-5px;
        left:0;
        background:#ddd;
    }

     

     

    法八、滚动条

     

    这个方法由 小火柴的蓝色理想 提供,通过改变滚动条样式实现:

     

    1
    2
    3
    4
    5
    6
    7
    8
    9
    div{
        width:205px;
        background:deeppink;
        overflow-y:scroll;
    }
    div::-webkit-scrollbar{
        width200px;
        background-color:#ddd;
    }

     

    https://www.tongbiao.xyz/
  • 相关阅读:
    libevent 源码学习四 —— 源代码文件组织
    c++上待解决的内容
    常用网址
    tin mission 2021 11 14
    问题--c++
    小思维--c++
    thin mission 2021 11 13
    physics--lecture--Centre of Gravity & Inertia and conservation of angular momentum
    physics--lecture--torque--static equilibrium
    physics—lecture ——torque
  • 原文地址:https://www.cnblogs.com/tongbiao/p/6734928.html
Copyright © 2020-2023  润新知