CSS3实现多样的边框效果


Posted in HTML / CSS onMay 04, 2018

半透明边框

实现效果:

CSS3实现多样的边框效果

实现代码:

<div>
你能看到半透明的边框吗?
</div>
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) 让背景不要延伸到边框所在的区域下层,也就是让内边距的外沿来裁切背景。
 

多重边框

实现效果:

CSS3实现多样的边框效果

实现代码:

<div></div>
/* 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 设置一层边框。这个方案可实现虚线边框,但它只能实现两层边框。

边框内圆角

实现效果:

CSS3实现多样的边框效果

实现代码:

<div>我有一个漂亮的内圆角</div>
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 和容器圆角之间的空隙,因此可达到我们想要的效果。

总结

以上所述是小编给大家介绍的CSS3实现多样的边框效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
css3弹性盒模型(Flexbox)详细介绍
Oct 08 HTML / CSS
css3的transition属性详解
Dec 15 HTML / CSS
CSS3近阶段篇之酷炫的3D旋转透视
Apr 28 HTML / CSS
html通过canvas转成base64的方法
Jul 18 HTML / CSS
让IE支持HTML5的方法
Dec 11 HTML / CSS
Canvas与Image互相转换示例代码
Aug 09 HTML / CSS
HTML5注册页面示例代码
Mar 27 HTML / CSS
深入浅析HTML5中的article和section的区别
May 15 HTML / CSS
VSCode 自定义html5模板的实现
Dec 05 HTML / CSS
html5视频自动横过来自适应页面且点击播放功能的实现
Jun 03 HTML / CSS
详解Html5项目适配系统深色模式方案总结
Apr 14 HTML / CSS
六个好看实用的 HTML + CSS 后台登录入口页面
Apr 28 HTML / CSS
纯css3制作煽动翅膀的蝴蝶的示例
Apr 23 #HTML / CSS
CSS3使用transition属性实现过渡效果
Apr 18 #HTML / CSS
CSS3 二级导航菜单的制作的示例
Apr 02 #HTML / CSS
CSS3实现全景图特效示例代码
Mar 26 #HTML / CSS
css3新单位vw、vh的使用教程
Mar 23 #HTML / CSS
巧用CSS3的calc()宽度计算做响应模式布局的方法
Mar 22 #HTML / CSS
利用css3径向渐变做一张优惠券的示例
Mar 22 #HTML / CSS
You might like
二次元帅气男生排行榜,只想悄悄收藏系列
2020/03/04 日漫
php长字符串定义方法
2012/07/12 PHP
PHP错误和异长常处理总结
2014/03/06 PHP
php的dl函数用法实例
2014/11/06 PHP
PHP5.5迭代生成器用法实例详解
2016/03/16 PHP
JQuery 学习笔记 选择器之一
2009/07/23 Javascript
JavaScript 事件系统
2010/07/22 Javascript
formValidator3.3的ajaxValidator一些异常分析
2011/07/12 Javascript
javascript中动态加载js文件多种解决办法总结
2013/11/15 Javascript
jQuery aminate方法定位到页面具体位置
2013/12/26 Javascript
jQuery事件之键盘事件(ctrl+Enter回车键提交表单等)
2014/05/11 Javascript
JavaScript实现获得所有兄弟节点的方法
2015/07/23 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
JS中正则表达式只有3种匹配模式(没有单行模式)详解
2016/07/28 Javascript
详解jQuery中的DOM操作
2016/12/23 Javascript
微信小程序开发之map地图实现教程
2017/06/08 Javascript
深入浅出webpack之externals的使用
2017/12/04 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
2019/04/14 Javascript
Vue源码学习之关于对Array的数据侦听实现
2019/04/23 Javascript
JavaScript单线程和任务队列原理解析
2020/02/04 Javascript
使用pandas中的DataFrame数据绘制柱状图的方法
2018/04/10 Python
Python 循环语句之 while,for语句详解
2018/04/23 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
2018/07/27 Python
在交互式环境中执行Python程序过程详解
2019/07/12 Python
Python datetime 如何处理时区信息
2020/09/02 Python
世界上最大的各式箱包网络零售店:eBag
2016/07/21 全球购物
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
药学专业个人自我评价
2013/11/11 职场文书
自我评价正确写法范文
2013/12/10 职场文书
答谢会策划方案
2014/05/12 职场文书
申报材料格式
2014/12/30 职场文书
毕业论文指导老师意见
2015/06/04 职场文书
被委托人身份证明
2015/08/07 职场文书
2016秋季田径运动会广播稿
2015/12/21 职场文书
三严三实·严以用权心得体会
2016/01/12 职场文书