美文网首页
CSS揭秘——透明边框

CSS揭秘——透明边框

作者: ghwaphon | 来源:发表于2017-08-15 21:05 被阅读491次

当我们在实现透明边框的时候,会遇到一些问题。在阐述这些问题之前,首先看看什么是透明边框,总的来说,就如下图所示。

透明边框.png

众所周知的是,一旦给一个元素设置了背景之后,那么这个背景所包含的区域是 content + padding + border。

按照一般的思路,我们要设置一个透明边框,首先会用到以下代码:

background: #FFF;
border: 10px solid rgba(255, 255, 255, .5);

如果是这么设置,不出意外我们会看到以下结果。

透明边框2.png

看上去我们像是没有设置这个边框,实际上这个边框是存在的,由于我们的边框设置的是透明的白色,而这个元素的背景也是白色,所以看上去就只有白色,所谓的透明边框也就不存在了。不过这只是特例情况,如果元素的背景不是白色,而是其它颜色,那么我们是可以看到这个边框的,不过这个时候就不再是透明边框,而是背景色+透明色的结合色。就比如设置以下代码。

background-color: orange;
border: 10px solid rgba(255, 255, 255, .5);

效果如下:

透明边框3.png

再次回到一开始以白色为背景的情况,为什么会出现透明边框消失呢?原因就是白色+透明色还是白色,那么我们能不能让背景色的渲染范围由 content+padding+border 变成 content+padding 呢?

解决这个问题的突破口是 background-clip 属性,它就是用来设置元素背景渲染范围的,有三个可选值分别是 content-box, padding-box, border-box。详情可以查看 CSS3 Background Clip

所以,为了得到一个令人满意的透明边框,我们的代码是

background-clip: padding-box;
background-color: #FFF;
border: 10px solid rgba(255, 255, 255, .5);

相关文章

  • CSS揭秘——透明边框

    当我们在实现透明边框的时候,会遇到一些问题。在阐述这些问题之前,首先看看什么是透明边框,总的来说,就如下图所示。 ...

  • 半透明边框——《css揭秘》

    这个时候会显示出这样的效果。 如果在加上background-clip属性就会不一样。(1)默认的backgrou...

  • 《css揭秘》实例练习--半透明边框

    《css揭秘》一直很期待这本书,终于入手了。果断的要试一试书中的例子。 第一个例子是 半透明边框 首先看看我做出来...

  • CSS揭秘整理之半透明边框

    1.半透明边框 问题: 如果我们要为一个容器设置红色背景和一道黑色半透明边框,我们可能会这样写: 但是效果却是这样...

  • 《css-secrets》-demo:半透明边框

    《css-secrets》 半透明边框 关键字:半透明;边框;background-clip 需求描述 给一个容器...

  • 背景与边框

    title: 背景与边框date: 2016-10-16tags: CSS Secrets 0x00 半透明边框 ...

  • Chapter9 盒模型

    CSS将每个元素看做一个盒子表示,由内容,内边框,外边框组成。内容可被透明内边框padding包围,内边框周围可放...

  • CSS揭秘——多重边框

    如果我们想为一个元素设置边框,很自然的会利用 border 属性,比如说,我想得到如下效果。 非常简单的,我们只需...

  • 半透明边框&多重边框&背景定位

    半透明边框 半透明颜色的实现已经屡见不鲜,以往在css2,大家需要准备一张单像素的半透明图片,但是边框呢?所幸cs...

  • css如何让边框透明?

    透明一般认为是一种颜色属性,但是并没有这个数值。我们找到了一种让边框实现透明的最佳方案,运用RGBA设置。 css...

网友评论

      本文标题:CSS揭秘——透明边框

      本文链接:https://www.haomeiwen.com/subject/aqavrxtx.html