css3 border-image及连续的图像边框
border-image
它是下面几个值的简写:
border-image-source // 使用绝对或相对地址url,引入图片
border-image-slice //切割图片,取值支持:<number> 或<percentage>其中number是没有单位的,
border-image-width //边框图片的宽度
border-image-outset //边框向外延伸的距离
border-image-repeat //边框如何重复取值有: stretch | repeat | round
它的默认值是:none 100% 1 0 stretch。
none:是border-image的默认值,如果取值为none时,表示边框无背景图片。
使用 border-image 时,其将会替换掉
border-style
属性所设置的边框样式。
此外,规范要求使用 border-image 时
边框样式必须存在。
border-image的工作原理就是九宫格伸缩法:把图片切割成九块,然后把他们应用到边和角。
上面的原图,应用到边框上效果如下:
border:15px solid red;
border-image: url(https://mdn.mozillademos.org/files/4127/border.png) 30 ;
border-image: url(https://mdn.mozillademos.org/files/4127/border.png) 30 repeat;//增加了repeat属性 效果如下
小应用:生成老式信封的边框样式
border-image可以运用渐变生成类似信封边框样式
div {
padding: 1em;
border: 16px solid transparent;
border-image: 16 repeating-linear-gradient(-45deg, red 0,red 1em,
transparent 0,transparent 2em,blue 0,blue 3em,transparent 0,transparent 4em );
max-width: 20em;
}
效果图:
此外,通过background和渐变生成蚂蚁行军的边框。
@-webkit-keyframes ants { to { background-position: 100% 100% } }
div{
-webkit-animation: ants 12s linear infinite;
padding: 1em;
border: 1px solid transparent;
background: linear-gradient(white, white) padding-box,
repeating-linear-gradient(-45deg, black 0, black 25%, transparent 0, transparent 50%) 0 / .6em .6em;
效果图(静态的):
当然,border-image还有个强大的技巧就是搭配渐变图案:
列如,我们需要有个顶部边框被裁切的效果类似脚注。
我们要做的就是运用border-image加上一条由渐变生成的垂直条纹,而边框的粗细有border中的width来控制。
border-top:.2em solid transparent;
border-image: 100% 0 0 linear-gradient(90deg ,currentcolor 4em,transparent 0);
padding-top: .5em;
css3 border-image及连续的图像边框的更多相关文章
- CSS揭秘之多重边框&连续的图像边框
1.多重边框 我们可以通过使用border-image来写一个多重边框,或使用多个元素来模拟多重边框,不过我们有更好的办法来制作一个多重边框,那就是使用box-shadow的第四个参数(称为扩张半径) ...
- css实现连续的图像边框
有时我们想把一个图片应用为边框,而不是背景,最简单的办法是使用两个HTML元素,一个元素用来把我们的石雕图片设置为背景,另一个元素用来存放内容,并设置纯白背景,然后覆盖在前者之上,这个方法需要一个额外 ...
- css3学习总结3--CSS3图像边框
border-image属性 .className{ border-image:url(/course/54d1cae088dba03f2cd1fec1/img/border.png) 20 20 2 ...
- css3 border img 边框图片
摘自http://www.html-js.com/article/CSS3-tutorial-css3borderimage-frame-image-Xiangjie-on border-image摘 ...
- css3: background-image使用多个背景图像
CSS3 允许元素使用多个背景图像. background-image: url(img/ic_ms.png),url(img/icon_dutyfree_invite.png); <!DOCT ...
- CSS3利用一个div实现内圆角边框效果
*首先要清楚的是,box-shadow的形状会随着border-radius变化.下面的例子可以证明: <!doctype html> <html lang="en&quo ...
- CSS3实现原腾讯视频透明边框,多重边框等(关于边框那些不为人知的事情)
1.hsla或rgba实现半透明边框. rgba在rgb的基础上增加了透明通道,就不详细说了,下面重点说下hsla: 说明: HSLA(H,S,L,A) 取值: H:Hue(色调).0(或360)表示 ...
- css3 使用SVG做0.5px 的边框细线
.HalfPixelLine{ background: repeat-x top left url("data:image/svg+xml;utf8,<svg xmlns='http: ...
- CSS3 border属性的妙用
.ribbon { background: #45c9c8; position: absolute; width: 75px; height: 25px; line-height: 25px; top ...
随机推荐
- AndroidManifest.xml警告
新建一个android项目后,AndroidManifest.xml有一个黄色警告 作为一个新手,不知道这个警告来自哪里,点击界面下方的不同标签,才知道来自图中的位置 第8行中,application ...
- Vuex 使用了 module 后的访问方法 ..
如果 使用了 module 和 namespace state 数据:=> this.$store.state.User.info (user 是模块名字. info 是 state 里 ...
- C++_类入门3-嵌套类
可以将类B声明在另一个类中.在另一个类A中声明的类B被称为嵌套类(nested class). 类A的成员函数可以创建和使用嵌套类B的对象. 当且仅当声明为公有部分时,才能在类A的外面使用嵌套类.而且 ...
- LeetCode268.缺失数字
268.缺失数字 描述 给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数. 示例 示例 1: 输入: [3,0,1] 输出: 2 示例 ...
- 【算法笔记】B1001 害死人不偿命的(3n+1)猜想
1001 害死人不偿命的(3n+1)猜想 (15 分)卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复砍 ...
- aoj0121
一.题意:类似于华容道,输入是8个数字,输入虽然是一行,但实际是以两行的方式操作的.0表示空位,别的相邻数字可移动到该位置上.求最少移动步骤得到指定的状态. 二.思路:这题可以用BFS来解决.因为在每 ...
- Win10小娜关闭或删除进程
先来说下我为什么想尽方法关闭win10小娜:我觉得功能并不适用于我,即便不启用Cortana小娜,在Win10进程中也会看到Cortana小娜启动着,耗费了内存.CPU,而且主要的我的磁盘利用率等都居 ...
- VUE--mixins的一些理解。
概念:混入 (mixins) 是一种分发 Vue 组件中可复用功能的非常灵活的方式.混入对象可以包含任意组件选项.当组件使用混入对象时,所有混入对象的选项将被混入该组件本身的选项. 用法: 1.创建混 ...
- Java - 打印质数(使用控制嵌套循环跳转)
使用控制嵌套循环跳转,打印输出10 ~ 150之间的质数 代码: public class Testcotinue { public static void main(String[] args) { ...
- vi命令——修改文件内容
以下内容转载自http://blog.csdn.net/bruce0532/article/details/7842384 vi编辑器是所有Unix及Linux系统下标准的编辑器,介绍一下它的用法和一 ...