学习要点:
1.属性初探
2.属性解释
3.简写和版本
主讲教师:李炎恢
本章主要探讨 HTML5 中 CSS3 中边框图片背景的效果,通过这个新属性让边框更加的丰富多彩。
一.属性解释
CSS3 提供了一个新的属性集合,用这几个属性可以嵌入图片形式的边框。这样,边框就可以自定义了。
1.border-image-source //引入背景图片地址
2.border-image-slice //切割引入背景图片
3.border-image-width //边框图片的宽度
4.border-image-repeat //边框背景图片的排列方式
5.border-image-outset //边框背景向外扩张
6.border-image //上面五个属性的简写方式
二.属性解释
要实现边框背景,我们对图片也有一定的要求,否则效果不能完全体现出来。图片可以通过九宫格的切分来了解它。我们使用 W3C 官网上教学的图片来讲解一下。
如上图所示,九宫格并不一定要求每一个格子大小都相同。当然,如果相同的话,制作边框背景就相对容易一点。比如如下这张图片:
首先,用 Photoshop 软件分析一下这个标准九宫格的总体大小和每个格子的大小。最终得出图片总大小为 81px 正方形,四个角的大小为 27px 的正方形,其余五个角也是 27px。
那么,第一步:先创建一个盒子区域,大小为 400x400 的矩形。然后设置引入边框图像。
//引入边框图像
<span style="color: #800000;">border-image-source: url(border.png);</span>
单单只有这句话,webkit 引擎下的浏览器会在盒子区块的四个角看到一丁点图像的影子。而其他浏览器什么都看不到。这是由于没有设置边框背景图像的宽度导致的。
//设置边框图像宽度,上右下左,可以设置四个值
<span style="color: #800000;">border-image-width: 81px;</span>
这里设置的是边框图像的宽度,而不是边框宽度。当你设置边框宽度,你会发现,文本会偏移。而边框图像的宽度不会挤压文本。
//设置边框的宽度
<span style="color: #800000;">border-width: 20px;</span>
以上设置完毕后,支持边框背景图片的浏览器会在四个角落铺上这张图片的完整形式。这个时候需要通过引入切割属性来配置背景图片的显示方式。
//首先,边框图像宽度设置为 27px 和一个单格宽高一致
<span style="color: #800000;">border-image-width: 27px;</span>
//设置切割属性的大小
<span style="color: #800000;">border-image-slice: 27;</span>
这里的 27 不需要设置 px 像素,因为它默认就是像素。设置 27 之后,我们会发现边框的四个角正好是橘红色的四个角。那么你可以逐步放大或逐步放下这个值,来体验一下它的变化。
//从 27 逐步放大到 81,四个角都慢慢缩小,各自显示一个完整的图像
<span style="color: #800000;">border-image-slice: 81;</span>
//从 27 逐步缩小到 0,发现四个角都慢慢变大,配合 fill 整体显示一个完整图像
<span style="color: #800000;">border-image-slice: 0 fill;</span>
上面只是单独设置了一个像素表示四个边切割的大小,你也可以设置百分比、浮点值或者分别设置四个变的大小。
//33.5%差不多 27
<span style="color: #800000;">border-image-slice: 33.5%;</span>
//上下设置 27,左右设置 0
<span style="color: #800000;">border-image-slice: 27 0;</span>
如果想让边框背景向外扩张,那么可以进行扩张设置。
//向外扩张 20px,也可以是浮点值,比如 2.2
<span style="color: #800000;">border-image-outset: 20px;</span>
四个角设定好之后,我们要设定四个变的显示排列方式。使用 border-image-repeat 属性,有四个值提供使用,分别如下表:
属性 |
说明 |
stretch |
指定用拉伸方式填充边框背景图。默认值。 |
repeat |
指定用平铺方式来填充边框背景图。当图片碰到边界时,如果超过则被截断。 |
round |
指定用平铺方式来填充边框背景图。图片会根据边框的尺寸动态调整图片的大小,直至正好可以铺满整个边框。 |
space |
指定用平铺方式来填充边框背景图。图片会根据边框的尺寸动态调整图片的之间的间距,直至正好可以铺满整个边框。 |
//拉伸方式填充,当然,通过上右下左设置四个边均可
<span style="color: #800000;">border-image-repeat: stretch;</span>
//平铺填充,超过则被截断
<span style="color: #800000;">border-image-repeat: repeat;</span>
//平铺填充,动态调整图片大小直至铺满
<span style="color: #800000;">border-image-repeat: round;</span>
//平铺填充,动态调整图片的间距直至铺满
<span style="color: #800000;">border-image-repeat: space;</span>
//另一个按钮的小例子
<span style="color: #800000;">div </span>{<span style="color: #ff0000;"> width</span>:<span style="color: #0000ff;"> 400px</span>;<span style="color: #ff0000;"> height</span>:<span style="color: #0000ff;"> 40px</span>;<span style="color: #ff0000;"> border-image-source</span>:<span style="color: #0000ff;"> url(button.png)</span>;<span style="color: #ff0000;"> border-image-width</span>:<span style="color: #0000ff;"> 10px</span>;<span style="color: #ff0000;"> border-image-slice</span>:<span style="color: #0000ff;"> 10 fill</span>;<span style="color: #ff0000;"> border-image-repeat</span>:<span style="color: #0000ff;"> stretch</span>; }
三.简写和版本
//border-image 简写格式很简单,具体如下:
<span style="color: #800000;">border-image: || [ / | / ? / ]? || </span><span style="font-family: verdana, Arial, Helvetica, sans-serif; font-size: 14px; line-height: 1.5; background-color: #ffffff;"> </span>
//以上是手册上摘录的,转换成实际格式如下:
<span style="color: #800000;">border-image: url(border.png) 27/27px round;</span><span style="font-family: verdana, Arial, Helvetica, sans-serif; font-size: 14px; line-height: 1.5; background-color: #ffffff;"> </span>
对于支持的浏览器及版本如下表:
|
Opera |
Firefox |
Chrome |
Safari |
IE |
部分支持需带前缀 |
11.5~12.1 |
3.5 ~ 14 |
4 ~ 14 |
3.1 ~ 5.1 |
无 |
支持需带前缀 |
无 |
无 |
无 |
无 |
无 |
支持不带前缀 |
15+ |
15+ |
15+ |
6+ |
11.0+ |
//兼容加上前缀
<span style="color: #800000;">-webkit-border-image: url(border.png) 27/27px round; -moz-border-image: url(border.png) 27/27px round; -o-border-image: url(border.png) 27/27px round; border-image: url(border.png) 27/27px round;</span>

htmltagsareessentialforwebdevelopmentasthuctureandenhancewebpages.1) thefinelayout, semantics 및 internactivity.2) semantictagsimproveAccessibility 및 sseo.3) appleasoftagscanoptimizeperformanceandenseRocRossercompatiber.

일관된 HTML 인코딩 스타일은 코드의 가독성, 유지 가능성 및 효율성을 향상시키기 때문에 중요합니다. 1) 소문자 태그 및 속성 사용, 2) 일관된 압입 유지, 3) 단일 또는 이중 인용문을 선택하고 고수하십시오. 4) 프로젝트에서 다양한 스타일을 혼합하지 않으십시오.

솔루션 Bootstrap4에서 다중 프로 젝트 회전 목마를 구현하는 것은 부트 스트랩 4에서 멀티 프로 젝트 회전 목마를 구현하는 것은 쉬운 일이 아닙니다. 부트 스트랩 ...

마우스 스크롤링 이벤트 침투의 효과를 달성하는 방법은 무엇입니까? 웹을 탐색하면 종종 특별한 상호 작용 디자인이 발생합니다. 예를 들어, DeepSeek 공식 웹 사이트에서 � ...

HTML 비디오의 기본 재생 제어 스타일은 CSS를 통해 직접 수정할 수 없습니다. 1. JavaScript를 사용하여 사용자 정의 컨트롤을 만듭니다. 2. CSS를 통해 이러한 통제를 아름답게합니다. 3. video.js 또는 plyr와 같은 라이브러리를 사용하여 호환성, 사용자 경험 및 성능을 고려하면 프로세스를 단순화 할 수 있습니다.

휴대 전화에서 기본 선택을 사용하는 데있어 잠재적 인 문제는 모바일 애플리케이션을 개발할 때 종종 상자를 선택해야 할 필요가 있습니다. 일반적으로 개발자 ...

휴대 전화에서 기본 선택을 사용하는 단점은 무엇입니까? 모바일 장치에서 애플리케이션을 개발할 때는 올바른 UI 구성 요소를 선택하는 것이 매우 중요합니다. 많은 개발자 ...

Three.js 및 Octree를 사용하여 방에서 3 인칭 로밍의 충돌 처리를 최적화하십시오. 3.js의 Octree를 사용하여 방에서 3 인칭 로밍을 구현하고 충돌을 추가하십시오 ...


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!
