详解CSS3中border-image的使用


Posted in HTML / CSS onJuly 18, 2015

最近在项目中用到了border-image,一直是只知其名,不知其用。

最终效果是这样的:且随着border宽度变化。下图灰色部分带斜纹的是border
详解CSS3中border-image的使用

先看下css:

CSS Code复制内容到剪贴板
  1. border-width40px;   
  2. border-stylesolid;   
  3. border-image-source: url('http://das.alipay.net/shulaibao/img/repeat_padding_bg_400px.png');   
  4. border-image-slice: 40;   
  5. border-image-repeatrepeat;   
  6. background#fff;   
  7. width800px;  

首先它必须是和border一起用,如果border为none,它也无效
实际是替换border-style,当border-image-source或border-image无效时,border-style就会有效了

和background一样,border-image也有简写的写法

简写的语法:

CSS Code复制内容到剪贴板
  1. border-image:<'border-image-source'> || <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>? / <'border-image-outset'> ]? || <'border-image-repeat'>  

如上所示,包含了5个属性,详细分解如下:

图片地址: border-image-source,很好理解,要么有要么没有

CSS Code复制内容到剪贴板
  1. border-image-source:url('') || none  

图片切片: border-image-slice,不太好理解,是实现效果的精华,它把border-image-source切割成9部分,俗称九宫格,4个角,4个边框,1个中间区域
详解CSS3中border-image的使用

语法: 

CSS Code复制内容到剪贴板
  1. [<number> | <percentage>]{1,4} && fill?   

 

 border-image-slice: slice  /* One-value syntax   */  E.g. border-image-slice: 30%;
 border-image-slice: horizontal vertical    /* Two-value syntax   */  E.g. border-image-slice: 10% 30%;
 border-image-slice: top vertical bottom    /* Three-value syntax */  E.g. border-image-slice: 30 30% 45;
 border-image-slice: top right bottom left  /* Four-value syntax  */  E.g. border-image-slice: 7 12 14 5;
 border-image-slice: … fill /* The fill value can be placed between any value */ E.g. border-image-slice: 10% fill 7 12;
 border-image-slice: inherit
 值只能是写数值,百分比(相对图片的宽度或高度),而长度(px,em等)是不允许的且无效

图片宽度: border-image-width 代替border width
图片外凸: border-image-outset
图片重复: border-image-repeat,背景是否重复,默认值为stretch(拉伸)

HTML / CSS 相关文章推荐
使用HTML5和CSS3表单验证功能
May 05 HTML / CSS
CSS3绘制六边形的简单实现
Aug 25 HTML / CSS
CSS3毛玻璃效果(blur)有白边问题的解决方法
Nov 15 HTML / CSS
利用CSS3实现进度条的两种姿势详解
Mar 21 HTML / CSS
CSS3实现自定义Checkbox特效实例代码
Apr 24 HTML / CSS
css3实现动画的三种方式
Aug 24 HTML / CSS
HTML5安全介绍之内容安全策略(CSP)简介
Jul 10 HTML / CSS
HTML5 离线应用之打造零请求、无流量网站的解决方法
Apr 25 HTML / CSS
html5 worker 实例(一) 为什么测试不到效果
Jun 24 HTML / CSS
HTML5画渐变背景图片并自动下载实现步骤
Nov 18 HTML / CSS
html5 自定义播放器核心代码
Dec 20 HTML / CSS
详解HTML5中表单验证的8种方法介绍
Dec 19 HTML / CSS
CSS3中颜色线性渐变实战
Jul 18 #HTML / CSS
CSS3制作Dropdown下拉菜单的方法
Jul 18 #HTML / CSS
使用CSS3来绘制一个月食图案
Jul 18 #HTML / CSS
用CSS3绘制三角形的简单方法
Jul 17 #HTML / CSS
详解CSS3中Media Queries的相关使用
Jul 17 #HTML / CSS
CSS3中box-shadow的用法介绍
Jul 15 #HTML / CSS
举例详解CSS3中的Transition
Jul 15 #HTML / CSS
You might like
点评山进PR-D3L三波段收音机
2021/03/02 无线电
php验证手机号码(支持归属地查询及编码为UTF8)
2013/02/01 PHP
PHP实现无限级分类(不使用递归)
2015/10/22 PHP
PHP中的表达式简述
2016/05/29 PHP
php读取XML的常见方法实例总结
2017/04/25 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
jQuery实现的立体文字渐变效果
2010/05/17 Javascript
一个页面放2段图片滚动代码出现冲突的问题如何解决
2012/12/21 Javascript
JS cookie中文乱码解决方法
2014/01/28 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
jQuery中的read和JavaScript中的onload函数的区别
2014/08/27 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
Javascript简单实现面向对象编程继承实例代码
2015/11/27 Javascript
微信小程序 wxapp导航 navigator详解
2016/10/31 Javascript
利用jQuery实现滑动开关按钮效果(附demo源码下载)
2017/02/07 Javascript
js中的面向对象入门
2017/03/06 Javascript
Vue.js 图标选择组件实践详解
2018/12/03 Javascript
JavaScript使用localStorage存储数据
2019/09/25 Javascript
JavaScript设计模式之观察者模式与发布订阅模式详解
2020/05/07 Javascript
[02:06]DOTA2肉山黑名单魔法终结者 敌法师中文配音鉴赏
2013/06/17 DOTA
python列出目录下指定文件与子目录的方法
2015/07/03 Python
Python制作数据导入导出工具
2015/07/31 Python
Python IDLE清空窗口的实例
2018/06/25 Python
Python设计模式之命令模式原理与用法实例分析
2019/01/11 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
Python生成并下载文件后端代码实例
2020/08/31 Python
Python 多进程、多线程效率对比
2020/11/19 Python
用python批量下载apk
2020/12/29 Python
荷兰多品牌网上鞋店:Stoute Schoenen
2017/08/24 全球购物
Laura Geller官网:美国彩妆品牌
2018/12/29 全球购物
《夜晚的实验》教学反思
2014/02/19 职场文书
产品质量承诺书
2014/03/27 职场文书
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android
python 判断文件或文件夹是否存在
2022/03/18 Python