几个CSS的黑科技

我就要当一次标题党了。这里的黑科技其实就是一些CSS中不怎么为人所知但在解决某些问题的时候很溜的属性。

border-radius

很多开发者估计都没有正确认识这个border-radius,因为基本上很多人都是这么用的:

    .box {
      border-radius: 4px;
    }

稍微高端一点的是这样的:

    .box {
      border-radius: 4px 6px 6px 4px;
    }

然而,终极黑科技是这样用的:

    .box {
      border-radius: 5px 5px 3px 2px / 5px 5px 1px 3px;
    }

对,它可以赋8个值,没见过?不着急,具体的解释是这样的:

斜线前面的影响的是水平方向,斜线后面影响的是垂直方向,各个数字就分别代表四个不一样的方向。

outline-offset

相信很多开发者在写CSS的时候对下面的语句会很熟悉:

    input {
         outline : none;
    }

    input:focus {
         outline : none;
    }

这就是将 input 输入框去掉默认的蓝线框的方法。其实,这里还有说一个就是,CSS 中还有一个 outline-offset 属性,在这个属性中,你可以设置默认线框的距离;像这样

    input {
      outline-offset: 4px ;
    }

调节该属性值的大小你就可以看到outline的距离变化了。

类的声明

对于下面的类的声明,可能大家都很熟悉:

    .col-8 {

     }

这当然没什么,但是如果你这样写呢:

    .♥ {
      color: hotpink;
    }

    .★ {
      color: yellow;
    }

嗯,看起来怎么样,你是可以这么用的:

    <div class="♥ ★"></div>

只要是 Unicode 的,你都可以这么来声明你的类。

选中连续的几个元素

    ol li:nth-child(n+7):nth-child(-n+14) {
      background: lightpink;
    }
    /** Or Safari Way **/
    ol li:nth-child(-n+14):nth-child(n+7) {
      background: lightpink;
    }

上面的这种写法其实就可以达到选中ol下面的第七到第十四个li元素。

伪类设置单标签

html中有几个常见的单标签 br > ,hr > 等。具体可以查看这里:

http://www.w3.org/TR/html5/syntax.html#void-elements

下面的示例是实现对 hr > 的修饰。

    hr:before {
       content: "♪♪";
    }

    hr:after {
       content: " This is an < hr > element";
    }

没错,关键就是使用 :before 和 :after 这两个伪类。在这里,顺便说一点就是,其实你还可以用这两个伪类来修饰 <meta><link>,不过这个前提是,你把这两个的 display 属性设置为:

``
display: block
```

属性区分大小写

假如我们在写html的时候有类似下面的代码:

    <div class="box"></div>
    <input type="email">

然后我们用属性选择器进行CSS修饰:

    div[class="box"] {
      color: blue;
    }

    input[type="email"] {
      border: solid 1px red;
    }

这样的声明方式毫无疑问地就会生效。然而,如果我们声明成下面这个样子,结果会是怎么样的呢:

    div[class="BOX"] {
      color: blue;
    }

    input[type="EMAIL"] {
      border: solid 1px red;
    }

这变成了大写之后,第一个 class="BOX" 并不会影响到 < div class="box" >< /div >,而第二个 type="EMAIL" 还是会正常修饰 < input type="email" >。所以在使用属性选择器的时候,注意大小写问题。

目前就只觉得这些 CSS 黑科技需要提醒自己一下,有可以补充。

Happy Hacking

作者:JellyBool (Coding 用户)

出处:https://www.jellybool.com/post/css-that-you-may-not-know

posted on   咚..咚  阅读(100)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示