前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >CSS3实现多样的边框效果

CSS3实现多样的边框效果

作者头像
laixiangran
发布于 2018-07-25 06:27:34
发布于 2018-07-25 06:27:34
99900
代码可运行
举报
文章被收录于专栏:前端布道前端布道
运行总次数:0
代码可运行

半透明边框

实现效果:

实现代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div>
你能看到半透明的边框吗?
</div>
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
div {

    /* 关键代码 */
    border: 10px solid rgba(255,255,255,.5);
    background: white;
    background-clip: padding-box;

    /* 其它样式 */
    max-width: 20em;
    padding: 2em;
    margin: 2em auto 0;
    font: 100%/1.5 sans-serif;
}

实现要点:

  • 设置边框为半透明,这是还看不到半透明边框,因为默认情况下,背景会延伸到边框所在的区域下层,也就是背景是被边框的外沿框裁切掉。
  • 通过设置 background-clip: padding-box (初始值是 border-box) 让背景不要延伸到边框所在的区域下层,也就是让内边距的外沿来裁切背景。

多重边框

实现效果:

实现代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div></div>
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/* box-shadow 实现方案 */
div {

    /* 关键代码 */
    box-shadow: 0 0 0 10px #655,
            0 0 0 15px deeppink,
            0 2px 5px 15px rgba(0,0,0,.6);

    /* 其它样式 */
    width: 100px;
    height: 60px;
    margin: 25px;
    background: yellowgreen;
}

/* border/outline 实现方案 */
div {

    /* 关键代码 */
    border: 10px solid #655;
    outline: 5px solid deeppink;

    /* 其它样式 */
    width: 100px;
    height: 60px;
    margin: 25px;
    background: yellowgreen;
}

实现要点:

  • box-shadow 实现方案使用的是 box-shadow 的第四个参数(扩张半径)。一个正值的扩张半径加上两个为零的偏移量以及为零的模糊值,得到的“投影”其实就像一道实线边框。而借助 box-shadow 支持逗号分割语法,可创建任意数量的投影,因此我们就可实现多重边框效果。
  • border/outline 实现方案是使用 border 设置一层边框,再使用 outline 设置一层边框。这个方案可实现虚线边框,但它只能实现两层边框。

边框内圆角

实现效果:

实现代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div>我有一个漂亮的内圆角</div>
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
div {
    outline: .6em solid #655;
    box-shadow: 0 0 0 .4em #655; /* 关键代码 */

    max-width: 10em;
    border-radius: .8em;
    padding: 1em;
    margin: 1em;
    background: tan;
    font: 100%/1.5 sans-serif;
}

实现要点:

  • outline 不会跟着元素的圆角走(因而显示出直角),但 box-shadow 确实会的,因此,将两者叠加到一起,box-shadow(其扩张值大概等于 border-radius 值的一半) 会刚好填补 outline 和容器圆角之间的空隙,因此可达到我们想要的效果。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端布道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《CSS揭秘》读书总结:背景与边框
假设我们想给一个容器设置一层白色背景和一道半透明白色边框,body 的背景会从它的半透明边框透上来。我们最开始的尝试可能是这样的:
逆葵
2019/04/25
1.8K0
《CSS揭秘》读书总结:背景与边框
Css3新特性总结之边框与背景(一)
本系列主要总结Css3一些新特性的认识,来源于《css揭秘》书。 一、半透明边框 css3最好用hsla,而不是rgba,hsla是:h:颜色值(0~360);s:饱合度(0%~100%);l:亮度(0%~100%);a:透明度(0~1) background-clip:裁剪背景颜色,默认为border-box(背景颜色扩散到border);padding-box(背景颜色扩散到padding);content-box(背景颜色扩展到content) 示例代码: width:200px; height:20
sam dragon
2018/01/17
8270
CSS 边框秘探
相信你以前肯定尝试过 CSS 中的半透明颜色,比如 rgba() 和 hsla()。
用户8921923
2022/10/24
2.3K0
CSS 边框秘探
CSS实用技巧总结
全名Don't Repeat Yourself,该原则适用于所有编程语言而不限于css。
Nealyang
2020/04/22
1.5K0
CSS实用技巧总结
css3 UI 修饰——回顾
1.box-shadow 属性向框添加一个或者多个阴影。   语法: box-shadow: h-shadow v-shadow blur spread color inset     h-shadow 必须,水平阴影的位置,允许负值。     v-shadow 必须,垂直阴影的位置,允许负值。     blur 可选 模糊距离。     spread 可选,阴影的尺寸。     color 可选,阴影的颜色。     inset 可选,将外部阴影(outset) 改为
用户1197315
2018/01/22
8860
css3 UI 修饰——回顾
CSS制作一个半透明边框
对于如何使用 CSS 制作一个半透明边框,首先你要知道 background-clip 这个属性
全栈程序员站长
2022/09/14
6870
CSS制作一个半透明边框
有趣的CSS小示例:好看的皮囊千篇一律,有趣的灵魂万里挑一
如果你看上图代码没有看懂,请看下图,我注释掉一行代码,你就明白了。原来是dot元素,沿着Y轴在循环位移,隐藏掉就让你看到了加载的动画效果。
Javanx
2019/09/04
1.1K0
有趣的CSS小示例:好看的皮囊千篇一律,有趣的灵魂万里挑一
Css3新特性应用之视觉效果
一、单侧阴影 box-shadow属性的应用,格式:h-shadow v-shadow blur spread color inset属性取值介绍 h-sahdow:水平阴影的位置,允许负值 v-shadow:垂直阴影的位置,允许负值 blur:模糊距离 spread:阴影的尺寸,扩张距离,可以为负数 color:阴影的颜色 inset/outset:内部或者外部阴影 阴影的扩张距离对四边都有效,不能单独应用于单边。 box-shadow支持多组值同时生效的设置 示例代码: .wrap{
sam dragon
2018/01/17
7580
CSS3-边框和背景
CSS3中边框和样式得到了增强。例如:可以创建圆角边框,使用图像边框,为元素创建阴影。
奋飛
2019/08/15
1.4K0
CSS3新特性应用之用户体验
一、光标 新增加not-allowed光标,不允许访问 隐藏光标,在触模应用上很有用,css2.1需要一个透明的图片来实现,而css3直接用cursor:none即可。 完整代码: curosr: url(transparent.gif'); cursor: none; 二、扩大热区 应用在小按钮的情况下,不好被鼠标点击到 代码如下: .btn{ position: relative; cursor: pointer; } .btn:after{ position: absolute
sam dragon
2018/01/17
8610
用css3实现惊艳面试官的背景即背景动画(高级附源码)
这篇文章参考《css揭秘》这本书,并作出了自己的总结,希望能让大家更有收获,也强烈推荐大家看看这本书,你值得拥有。我们将学到
徐小夕
2019/09/24
8970
用css3实现惊艳面试官的背景即背景动画(高级附源码)
CSS3: 设计一个半透明边框
every-day-css-1 css-设计一个半透明边框 先看一下效果: lpx1rlr4j9.codesandbox.io/ 根据 background-clip的不同设置的不同情况 关键
西南_张家辉
2021/02/02
6190
css 总结2 原
 div { transform: translate(50px,100px); -ms-transform: translate(50px,100px);        /* IE 9 */ -webkit-transform: translate(50px,100px);    /* Safari and Chrome */ -o-transform: translate(50px,100px);        /* Opera */ -moz-transform: translate(50px,100px);        /* Firefox */ } div { transform: rotate(30deg); -ms-transform: rotate(30deg);        /* IE 9 */ -webkit-transform: rotate(30deg);    /* Safari and Chrome */ -o-transform: rotate(30deg);        /* Opera */ -moz-transform: rotate(30deg);        /* Firefox */ } div { transform: scale(2,4); -ms-transform: scale(2,4);    /* IE 9 */ -webkit-transform: scale(2,4);    /* Safari 和 Chrome */ -o-transform: scale(2,4);    /* Opera */ -moz-transform: scale(2,4);    /* Firefox */ } div { transform: skew(30deg,20deg); -ms-transform: skew(30deg,20deg);    /* IE 9 */ -webkit-transform: skew(30deg,20deg);    /* Safari and Chrome */ -o-transform: skew(30deg,20deg);    /* Opera */ -moz-transform: skew(30deg,20deg);    /* Firefox */ } translate(x,y)    定义 2D 转换,沿着 X 和 Y 轴移动元素。 translateX(n)    定义 2D 转换,沿着 X 轴移动元素。 translateY(n)    定义 2D 转换,沿着 Y 轴移动元素。 scale(x,y)    定义 2D 缩放转换,改变元素的宽度和高度。 scaleX(n)    定义 2D 缩放转换,改变元素的宽度。 scaleY(n)    定义 2D 缩放转换,改变元素的高度。 transform:translate(0 ,-50%) rotate(45deg);
tianyawhl
2019/04/04
5910
css常用的样式总结
word-break 换行 word-break:break-all 所有的都换行 word-wrap:break-word 如果一行文字有可以换行的点,如空格,或CJK之类的,就让这些换行点换行,不关心对不对齐,好不好看。容易出现一片一片的空白 css3中自动调整大小 div{ width: 300px; height: 300px; padding: 10px; border: 2px solid green;
友儿
2022/09/13
7410
01-移动端开发教程-CSS3新特性(上)
根据文章内容总结撰写摘要,以json格式返回。
老马
2017/12/20
1.6K0
CSS3新特性应用之字体排印
一、插入换行 ~:表示同辈元素之后指定类型的元素,如;elm1 ~ elm2表示,elm1之后的所有elm2元素,且elm1与elm2都是在同一个父级元素。 +:表示同辈元素的兄弟元素。 \A:一个空白换行符 解决方案: 在dd与dt相邻的dt上的子元素前面加入一个空白换行符 在相邻的dd与dd之间,加入一个逗号 示例代码: <head> <meta charset="UTF-8"> <title>Document</title> <style> dt, dd{
sam dragon
2018/01/17
8490
Css3新特性总结之边框与背景(二)
一、条纹背景 利用background为linear-gradient函数实现,linear-gradient取值如下: <angle>:角度,渐变的方向 to left right top bot
sam dragon
2018/01/17
7120
Web - CSS3浮动定位与背景样式
这篇文章主要介绍了 CSS3 中的浮动定位、背景样式、变形效果等内容。包括 BFC 规范与创建方法、浮动的功能与使用要点、定位的多种方式及特点、边框与圆角的设置、背景的颜色、图片等属性、多种变形效果及 3D 旋转等,还提到了浏览器私有前缀。
stark张宇
2025/02/04
1580
【CSS】CSS 总结 ⑤ ( CSS 盒子边框 | CSS 盒子模型内边距 | CSS 盒子模型外边距 | CSS 盒子模型圆角边框 | CSS 盒子模型阴影 ) ★
HTML 的 一个布局 可以看做一个 矩形的 盒子模型 , 该 盒子模型 是一个用于 容纳 标签元素 的容器 ;
韩曙亮
2024/03/12
5180
【CSS】CSS 总结 ⑤ ( CSS 盒子边框 | CSS 盒子模型内边距 | CSS 盒子模型外边距 | CSS 盒子模型圆角边框 | CSS 盒子模型阴影 ) ★
重温CSS3
基础不牢,地动山摇!没办法,只能重温“经典”! 1.CSS3边框:border-radius;  box-shadow;  border-image border-radius:r1,r2,r3,r4;(边框圆角!) r1~r4:分别为左上角,右上角,右下角,左下角半径(顺时针!缺省时:左上角、右下角相同;右上角,左下角相同) border-radius: 30px; box-shadow: x-shadow y-shadow blur spread color insert;(盒阴影) x-shadow
用户1149564
2018/01/11
1.9K0
重温CSS3
相关推荐
《CSS揭秘》读书总结:背景与边框
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验