详解css3之border-image_html/css_WEB-ITnose
border-image简介
css3中新增了一个属性border-image,这个属性允许开发者使用图片来定义边框,扩充了 CSS2 中仅有的几个预定义边框样式(border-style)。
border-image 是一个简写属性,分别设定了以下几个属性。
border-image-source
border-image-slice
border-image-width
border-image-outset
border-image-repeat
为什么图片可以作为边框?
在开始学习border-image之前我有一个疑问,图片是怎么应用到容器的边框上的?
看下图
简单的说就是把图片的中间部分去掉,从而形成一个类似边框的框架。
那么如何使用被划分出来的八格素材来生成一个边框呢?
左上、右上、左下、右下的四格素材分别作为边框的四个角,而上下左右的四格素材分别经过不同形式的扩展,形成边框的四条边。上图很好的说明了图片形成边框的处理形式。
border-image-source
border-image-source属性用来指定边框所需素材的路径,语法可以参照backgound-image。
需要注意的是,如果只设置了border-image-source属性而其他属性使用缺省值,则边框素材不会被划分九宫格,而是将整个素材按照边框宽度缩放至合适尺寸后安放在边框四角。
<!doctype html><html><head><meta charset="utf-8"><title>边框图片</title><style>#border_image { width:100px; height:100px; border:15px solid #ccc; border-image:url("http://img.mukewang.com/52e21fea000127e802100210.jpg"); background:#ccc; }</style></head><body><div id="border_image"></div></body></html>
如下图
border-image-slice
border-image-slice属性用来设置边框素材的切割尺寸,如下图,依次是上横切割线,右竖切割线,下横切割线,左竖切割线。数值分别代表从上、右、下、左边缘向素材中心延伸的像素/百分比数
注意:切割的数值只接受像素和百分比两个单位,并且像素单位必须省略,即只接收数值或者百分比的形式。例如,border-image-slice: 10 10 30 10代表图片素材按照下图的样式被切割:
border-image-width
border-image-width用来设置边框素材的宽度,当同时设置了border-image-width和border-width属性时,那么边框的实际宽度由border-width属性决定。此时,如果border-image-width属性小于border-width属性,边框图片会沿边框的外侧分布而内侧留空形成 padding 的效果;如果border-image-width属性大于border-width属性,边框图片会仍会沿边框的外侧分布而内测溢出,如下图
border-image-repeat
border-image-repeat属性用来设置上下左右四边(即2、4、5、7四个素材块)的重复形式,分别有stretch repeat round space四个取值
stretch:指定用拉伸方式来填充边框背景图。
repeat:指定用平铺方式来填充边框背景图。当图片碰到边界时,如果超过则被截断。
round:指定用平铺方式来填充边框背景图。图片会根据边框的尺寸动态调整图片的大小直至正好可以铺满整个边框。
space:指定用平铺方式来填充边框背景图。图片会根据边框的尺寸动态调整图片的之间的间距直至正好可以铺满整个边框。
border-image-outset
border-image-outset属性会产生使 border-image 相对于原始位置向外侧推移的效果,设置border-image-outset属性会使 border-image 溢出,但不会影响整个盒模型的尺寸,因此在设置此属性时要特别注意防止元素间的相互干扰。
如下图
后续
border-image是css3属性所以存在兼容性问题,需要在属性前面设置-webkit等

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

HTML适合初学者学习,因为它简单易学且能快速看到成果。1)HTML的学习曲线平缓,易于上手。2)只需掌握基本标签即可开始创建网页。3)灵活性高,可与CSS和JavaScript结合使用。4)丰富的学习资源和现代工具支持学习过程。

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML定义网页结构,CSS负责样式和布局,JavaScript赋予动态交互。三者在网页开发中各司其职,共同构建丰富多彩的网站。

HTML、CSS和JavaScript是Web开发的三大支柱。1.HTML定义网页结构,使用标签如、等。2.CSS控制网页样式,使用选择器和属性如color、font-size等。3.JavaScript实现动态效果和交互,通过事件监听和DOM操作。

HTML、CSS和JavaScript在Web开发中的作用分别是:1.HTML定义网页结构,2.CSS控制网页样式,3.JavaScript添加动态行为。它们共同构建了现代网站的框架、美观和交互性。

HTML的未来充满了无限可能。1)新功能和标准将包括更多的语义化标签和WebComponents的普及。2)网页设计趋势将继续向响应式和无障碍设计发展。3)性能优化将通过响应式图片加载和延迟加载技术提升用户体验。

HTML、CSS和JavaScript在网页开发中的角色分别是:HTML负责内容结构,CSS负责样式,JavaScript负责动态行为。1.HTML通过标签定义网页结构和内容,确保语义化。2.CSS通过选择器和属性控制网页样式,使其美观易读。3.JavaScript通过脚本控制网页行为,实现动态和交互功能。

HTML的未来趋势是语义化和Web组件,CSS的未来趋势是CSS-in-JS和CSSHoudini,JavaScript的未来趋势是WebAssembly和Serverless。1.HTML的语义化提高可访问性和SEO效果,Web组件提升开发效率但需注意浏览器兼容性。2.CSS-in-JS增强样式管理灵活性但可能增大文件体积,CSSHoudini允许直接操作CSS渲染。3.WebAssembly优化浏览器应用性能但学习曲线陡,Serverless简化开发但需优化冷启动问题。
