转载:
http://www.zhangxinxu.com/wordpress/2010/01/css3-border-image%E8%AF%A6%E8%A7%A3%E3%80%81%E5%BA%94%E7%94%A8%E5%8F%8Ajquery%E6%8F%92%E4%BB%B6/
Border-image的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>background-clip</title>
<style>
div{
margin-top:20px;
}
.div0{
-webkit-border-image:url(rounded_corner.png) 20 20 20 20;border-width:10px;-webkit-box-sizing: border-box;
}
.div1{
-webkit-border-image:url(rounded_corner.png) 20;border-width:10px;-webkit-box-sizing: border-box;
}
.div2{
-webkit-border-image:url(rounded_corner.png) 20/10px;/*第一个20是裁剪区域, 即20 20 20 20; 第二个20px是指border的宽度*/
}
</style>
</head>
<body>
<div class="div0">div0</div>
<div class="div1">div1</div>
<div class="div2">div2</div>
<img src="rounded_corner.png" style="margin-top:50px;">
</body>
</html>
熟悉border-image的一些特性
我们可能对于CSS2中的background属性比较熟悉,例如:background:url(xx.jpg) 27px no-repeat;
指代的是图片(url(xx.jpg)),位置(27px),重复性(no-repeat)。
border-image于此类似,border-image包括图片,剪裁位置(与background位置一样,也是数值,也支持百分值),重复性。例如:border-image:url(border.png) 27 repeat;,指的就是图片(url(border.png)),剪裁位置(27),重复方式(repeat)。试着对比background,这有助于border-image属性的记忆。
具体描述border-image的参数
border-image的参数就是上面提到的三个:
图片,剪裁位置,重复性。
1、图片(border-image-source)
与CSS2中background-image属性一样,border-image的背景图使用url()调用,图片可以是相对路径或是绝对路径,也可以不使用图片,即border-image:none;
2、图片剪裁位置(border-image-slice)
此参数特点比较鲜明:
1、没有单位,专指像素。这类似于flash的as脚本,舞台高宽,影片剪辑大小,位移直接就是一个数值,没有单位,因为默认单位就是像素(px)了。例如:border-image:url(border.png) 27 repeat;这里的27专指27像素。
2、支持百分比值,百分比值大小事相对于边框图片而言,假设边框图片大小为400px*300px,则20%的实际效果就是剪裁了图片的60px 80px 60px 80px的四边大小。
3、剪裁特性。如果您对CSS中clip属性(clip:rect(auto, auto, auto, auto))比较了解,则这里理解就会轻松些。clip可以说是CSS中一个明目张胆的剪裁属性,而此处的属性虽然表意上不是剪裁,但是在border-image效果的实现上来说,就好像是个剪裁工具,把边框图片四分五裂,再重新安置,变形。其有1~4个参数,其方位规则符合CSS普遍的方位规则(与margin,padding等或border-width一致),上右下左顺时针,再赋予剪裁的含义,举个简单的例子,前面提到,支持百分比宽度,所以这里“30% 35% 40% 30%的”示意可以用下图表示:
看图说话就是,
离图片上部30%的地方剪裁一下,在右边35%的地方剪裁一下,在离底部40%的地方裁剪一下,在距左边30%的地方也剪裁一下。于是总共对图片进行了“四刀切”,形成了九个分离的区域,这就是九宫格,这是下面深入讲解border-image的基础。
3、重复性(border-image-repeat)
这里的重复性有别于background的背景重复,差别较大。background图片就是重复,不重复,水平重复,垂直重复,总之就是围绕repeat(重复)这个词打转,一家独大。而对于border-image,可谓是三足鼎立,
repeat(重复)只是其中之一,其余两个是
round(平铺)和
stretch(拉伸)。其中,stretch是默认值。
参数0~2个,0则使用默认值 – stretch,例如:border-image:url(border.png) 30% 40%;就等同于border-image:url(border.png) 30% 40% stretch stretch;;1则表示水平方向及垂直方向均使用此参数;2个参数的话则第一个参数表水平方向,第二个参数表示垂直方向。例如:border-image:url(border.png) 30% 40%;就等同于
border-image:url(border.png) 30% 40% round repeat;表示
水平方向round(平铺),
垂直方向repeat(重复),至于何为平铺何为重复下面会深入讲解。
三、深入理解border-image的宽度和展示方式
分开理解border-image的宽度或是展示方式其实不太难的,关键是这两者结合使用时候的含义,需要花一定的功夫的理解。
- 大小: 303 Bytes
- 大小: 3.8 KB
分享到:
相关推荐
在 CSS3 中,开发者可以使用一系列增强的功能来定制网页元素的背景效果。这些功能不仅提供了更强大的控制能力,还增强了网页的设计美感。 ##### background - **描述**:在一个声明中设置所有的背景属性,包括颜色...
在 CSS3 中,我们可以使用动画属性来创建动画效果。动画属性包括: * @keyframes:规定动画。 * animation:所有动画属性的简写属性,除了 animation-play-state 属性。 * animation-name:规定 @keyframes 动画的...
border-image-slice 该属性值指定浏览器从某处裁剪源图片以获得边框的某部分。图片被分为9部分-包括4个边角,4条边,还有中心块。 (红色线围起来的区域为裁剪区域) 图片边框向内偏移的距离。格式:border-image-...
关于CSS中引用图片的方法,主要有以下几种: 1. `background-image`属性:常用于设置元素的背景图片,例如: ```css .element { background-image: url('image.jpg'); } ``` 2. `content`属性:在CSS伪元素`:...
CSS(层叠样式表)提供了实现这一效果的方法。在本教程中,我们将深入探讨如何利用CSS技术将图片自动转化为圆角。 首先,我们要了解CSS中的`border-radius`属性。这个属性允许我们为元素的边框设置圆角,从而让元素...
可以使用CSS的`object-fit`属性来调整图片在容器内的填充方式,如`contain`(保持宽高比填充容器,图片不会超过容器)或`cover`(保持宽高比填充容器,图片完全覆盖容器): ```css img { object-fit: cover; /* ...
二、背景图片裁剪(Background-clip) 在某些情况下,我们需要对背景图片进行裁剪以实现特定的效果。CSS的`background-clip`属性可以控制背景图片的绘制区域,例如: ```css element { background-image: url('...
- 当使用`border-radius`时,要注意浏览器对不同CSS3特性的兼容性,尤其是对于较旧的浏览器版本。 - 使用SVG时,文件大小可能会比单纯使用PNG或JPEG大,但其优点在于可缩放性和更好的打印质量。 5. 图片处理库: ...
- `border-image`则让我们可以用图片来绘制边框,提供了更丰富的装饰效果。 3. **背景属性扩展**: - `background-clip`决定了背景的绘制区域,可以是`border-box`, `padding-box`, `content-box`或`no-clip`。 ...
背景属性组中,介绍了如何在一个声明中设置元素的所有背景属性,包括背景颜色(background-color)、背景图片(background-image)、背景图片的起始位置(background-position)、背景图片的重复方式(background-...
《CSS2.0中文参考手册》与《CSS3.0中文参考手册》是关于Web页面样式设计的重要资源,它们详细阐述了CSS(层叠样式表)的语法、属性及使用方法,帮助开发者创建美观且功能丰富的网页。CSS是网页设计中的核心技术之一...
本文将详细讲解如何使用JavaScript(JS)来实现这一功能,同时不改变图片原有的样式,只是通过CSS和JavaScript来改变图片的显示效果。 首先,我们需要了解CSS中的`border-radius`属性。这个属性允许我们为元素的...
总结起来,要使用CSS3将正方形图片显示为圆形,你需要: 1. 确保图片是正方形。 2. 使用`border-radius`属性,并设置为50%。 3. 将该属性应用到图片元素上。 通过这种方式,你可以灵活地在网页设计中创建美观的圆形...
- **图片** (`background-image`): 在背景上显示图片。 - 示例: `background-image: url('image.jpg');` - **重复** (`background-repeat`): 控制背景图片是否重复。 - 不重复 (`no-repeat`) - 默认情况下重复 ...
- **背景图片裁剪与平铺**:`background-size`, `background-repeat`, `background-origin` 和 `background-clip`提供了更多控制。 3. **过渡与动画**: - **CSS Transitions**:使用`transition`属性实现属性值...
本教程将详细讲解如何利用jQuery实现一个基于坐标选择的图片裁剪功能,如"jquery坐标图片框裁剪.rar"所示。 首先,我们需要理解基本的图片裁剪原理。在网页上,用户可以通过拖动一个可调整大小的选区来选择图片的...
通过对FireFox和IE中滤镜效果相关CSS属性的比较分析可以看出,虽然两种浏览器都提供了丰富的工具来实现视觉效果,但它们采用的方法和属性却存在显著差异。在实际项目开发中,建议遵循标准CSS规范,并利用现代浏览器...
### CSS-网页样式大全 #### 一、字体属性(Font Properties) 在网页设计中,字体属性是用于控制文本外观的关键部分。以下是一些常见的CSS字体属性及其解释: 1. **大小** (`font-size`) - `x-large`: 特大的...
这份《CSS3.0中文手册》覆盖了以上所有内容,详细解释了各个特性的使用方法和示例,是CSS初学者和进阶者必备的参考书籍。通过深入学习,开发者能够充分利用CSS3.0的特性,创建出更加精美、响应式的网页设计。