玩过:not(:last-of-type)没呢

作者:andyjiang2018.02.01来源:Web前端之家浏览:374评论:0
关键词:last-of-typeHTML

我以前也没有想到过这种用法,这个小小的技巧能省去很多时间和代码。下面让我解释一下,比如说,我们要美化一个文章列表。

<!-- This is what your html would look like -->
<ul class="posts">
  <li class="post">
    <a href="/link-to-post/" title="Permalink to post">
      <h2>Post Title</h2>
      <small>Thurs, Feb 16, 2017<small>
    </a>
  </li>
</ul>	

我以前的实现方法是这样的,其实是很笨的方法!

.posts {
  list-style: none;
  margin: 0;
  padding: 0;
}

.post {
  border-bottom: 1px solid #eee;
  margin-bottom: .5rem;
  padding-bottom: .5rem;
  &:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

这css的目的是要让列表的文章之间有间隔,但最后一个不需要。这个时候,:not(:last-of-type)就大限神威了!

.post:not(:last-of-type) {
  border-bottom: 1px solid #eee;
  margin-bottom: .5rem;
  padding-bottom: .5rem;
}

使用not(:last-of-type),我们省掉了5行代码。试想在我们编写的其它代码中都使用这种技巧,不知道要省掉多少工夫。

温馨提示本文作者系 ,经Web前端之家编辑修改或补充,转载请注明出处和本文链接

已有0人参与

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新留言

  • 哈哈

    这eb2c0e8c839166f3036c5348f77293c9是什么呀...

  • admin

    客气了,请继续关注我们QQ群:295431592...

  • essaypinglun

    感谢楼主的分享...

  • 游客1

    非常好...

  • 游客

    这些插件都不错的...

  • 第三方

    似懂非懂...

  • admin

    有些是可以的,需要叠加很多层。...

  • 素材火

    纯css能实现吗?...