资讯专栏INFORMATION COLUMN

## CSS 的黑科技

wh469012917 / 3364人阅读

摘要:所以在使用属性选择器的时候,注意大小写问题。目前就只觉得这些黑科技需要提醒自己一下,有可以补充。

  

原文来自:https://jellybool.com/post/css-that-you-may-not-know

  

补充篇在这里 http://segmentfault.com/a/1190000003029085

昨天由于某些原因没有写博客,之前说好的每天一篇的,这篇是为了补昨天的了。然后我就要当一次标题党了。这里的黑科技其实就是一些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;
}

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



只要是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中有几个常见的单标签:
,


等。具体可以查看这里:

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

下面的示例是实现对


的修饰。

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

hr:after {
    content: " This is an 


element"; }

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

display: block

属性区分大小写

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



然后我们用属性选择器进行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"并不会影响到

,而第二个type="EMAIL"还是会正常修饰。所以在使用属性选择器的时候,注意大小写问题。

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

Happy Hacking

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/111081.html

相关文章

  • Vue中你不知道但却很实用的黑科技

    摘要:最近数月一直投身于的开源工作中,完成了大大小小多个组件,在组件化开发中积累了不少经验。在开发全局提示组件通知提醒组件对话框组件时,内部都是使用来渲染,但却是来隐式地创建这些实例,这样我们就可以像标题这样使用,但其内部还是通过来管理。 最近数月一直投身于 iView 的开源工作中,完成了大大小小 30 多个 UI 组件,在 Vue 组件化开发中积累了不少经验。其中也有很多带有技巧性和黑科...

    Heier 评论0 收藏0
  • Vue中你不知道但却很实用的黑科技

    摘要:最近数月一直投身于的开源工作中,完成了大大小小多个组件,在组件化开发中积累了不少经验。在开发全局提示组件通知提醒组件对话框组件时,内部都是使用来渲染,但却是来隐式地创建这些实例,这样我们就可以像标题这样使用,但其内部还是通过来管理。 最近数月一直投身于 iView 的开源工作中,完成了大大小小 30 多个 UI 组件,在 Vue 组件化开发中积累了不少经验。其中也有很多带有技巧性和黑科...

    NicolasHe 评论0 收藏0
  • CSS3实现全景图特效

    摘要:本篇文章将给大家带来一个的黑科技如何仅仅使用来实现全景图的效果最终效果演示页面布局基础样式首先定义一些基本的样式和动画这段代码的意思是让图片的高等于容器的高,并且水平方向自动,即图片最左边贴着容器左侧。 本篇文章将给大家带来一个css3的黑科技:如何仅仅使用css来实现全景图的效果? 最终效果演示:demo 页面布局 基础样式 首先定义一些基本的样式和动画 .panorama { ...

    winterdawn 评论0 收藏0
  • 前端优化 - 收藏集 - 掘金

    摘要:虽然有着各种各样的不同,但是相同的是,他们前端优化不完全指南前端掘金篇幅可能有点长,我想先聊一聊阅读的方式,我希望你阅读的时候,能够把我当作你的竞争对手,你的梦想是超越我。 如何提升页面渲染效率 - 前端 - 掘金Web页面的性能 我们每天都会浏览很多的Web页面,使用很多基于Web的应用。这些站点看起来既不一样,用途也都各有不同,有在线视频,Social Media,新闻,邮件客户端...

    VincentFF 评论0 收藏0
  • 前端文档收集

    摘要:系列种优化页面加载速度的方法随笔分类中个最重要的技术点常用整理网页性能管理详解离线缓存简介系列编写高性能有趣的原生数组函数数据访问性能优化方案实现的大排序算法一怪对象常用方法函数收集数组的操作面向对象和原型继承中关键词的优雅解释浅谈系列 H5系列 10种优化页面加载速度的方法 随笔分类 - HTML5 HTML5中40个最重要的技术点 常用meta整理 网页性能管理详解 HTML5 ...

    jsbintask 评论0 收藏0

发表评论

0条评论

wh469012917

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<