border-image-slice

border-image-slice

关于border-image-slice这个的值具体作用,视频中过于敷衍,不清晰。特来提问。希望弄懂这个属性到底是什么原理。用px、%、fill设置的时候分别是怎么个填充原理。边框切成9个区域后又是干嘛的?为什么视频中的例子一开始图片都在4个角上。

我希望老师给与的回答能解答我的疑惑。而不是更加敷衍的一概而论,也不是丢个网址自己去看。更不是说,这个东西不常用,了解就好。

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

1、最开始显示4个角是因为最开始老师只设置了border-image-source,border-image-source规则是:如果只设置了border-image-source属性而其他属性使用缺省值,则边框素材不会被划分九宫格,而是将整个素材按照边框宽度缩放至合适尺寸后安放在边框四角,所以最开始老师只设置了border-image-source的时候,只有四个角显示了图片

2、裁切成9宫格的原理和过程如下图:

http://img1.sycdn.imooc.com//climg/5d306b4700018f6a15690727.jpg

3、接下来我们来看一个代码和演示效果的示例:

http://img1.sycdn.imooc.com//climg/5d306ba20001f4b216650665.jpg

那么,到这里,说白了border-image-slice就是把图片的中间部分去掉,从而形成一个类似边框的框架,这样就形成了边框。

4、再来看一下设置了fill属性后的变化:

http://img1.sycdn.imooc.com//climg/5d306c7100014a0b16550736.jpg

这也就是说,fill就是让中间被抠掉的部分显示出来

5、边框的填充过程和原理如下:

左上、右上、左下、右下的四格素材分别作为边框的四个角(固定的点,不变),而上下左右的四格素材分别经过不同形式的扩展,形成边框的四条边

http://img1.sycdn.imooc.com//climg/5d306ae800018b0606450501.jpg

http://img1.sycdn.imooc.com//climg/5d306fb00001fe9b09780680.jpg

border-image-slice的数值只接受像素和百分比两个单位,并且像素单位必须省略,即只接收数值或者百分比的形式,百分比和像素px的填充原理是一样的

希望解答了你的疑惑,同学如果还有哪里不懂,可以在后面回复老师,老师会继续为你解答的哦

祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师