发布网友 发布时间:2022-04-06 10:23
共3个回答
懂视网 时间:2022-04-06 14:44
本篇文章给大家带来的内容是关于css3中背景属性中与边框相关的属性介绍 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。1 与背景相关的新增属性
background-clip:指定背景的显示范围。
background-origin:指定绘制背景图像时的起点。
background-size:指定背景中图像的尺寸。
background-break:指定内联元素的背景图像进行平铺时的循环方式。
注意:
Firefox浏览器:支持除了background-size属性之外的其他三个属性,需在属性前加上“-moz-”文字。使用background-break时需写“-moz-background-inline-policy”。
Safari、Google Chorme、Opera:支持除了background-break之外的其他三个属性,需在属性前加“”“-webkit-”文字。
(1)背景的显示范围
CSS2:背景的显示范围是指内部补白之内的范围,不包括边框。
CSS2.1乃至CSS3:背景的显示范围是指包括边框在内的范围。
(2)属性值
border:背景范围包括边框区域。
padding:背景范围不包括边框区域。
div.div1{ -moz-background-clip:border; -webkit-background-clip:border; } div.div2{ -moz-background-clip:padding; -webkit-background-clip:padding; }
(1)在绘制背景图像时,默认是从内容补白区域的左上角开始绘制的。
(2)值
border:从边框的左上角开始绘制
padding:从内容补白区域的左上角开始绘制
content:从内容的左上角开始绘制
(3)浏览器不同
Firefox:”-moz-background-origin”;
Safari、Chorme:“-webkit-background-origin”
(4)虽然将background-clip属性指定为padding的时候,边框点划线中点与点之间的图像不会显示,但是仍然可以通过将background-origin属性指定为border的方法来指定从边框的左上角开始绘制。
(1)使用方法
background-size:图像元素的宽度 高度;
(2)浏览器支持:
到目前为止:Safari3、Chrome8 、Firefox4、Opera10浏览器支持该属性。
(3)如果要维持图像的纵横比例,可以在设定图像宽度与高度时,将另一个参数设为auto
(4)只指定一个参数
浏览器中将该值作为宽度值,auto作为高度值进行处理。
(5)使用百分比的值作为参数
浏览器中将指定的百分比视为图像尺寸除以整个边框区域的尺寸后得出的百分比来处理
(6)contain关键字作为参数
这将把原始图像在维持纵横比的前提下自动方大或缩小,以使原始图像的宽度或高度完全等于元素的宽度或高度(确保图像能被完整显示在元素中)
(7)cover关键字作为参数
这会使原始图像在维持纵横比的前提下将背景图像自动缩放到填满元素内部,如果元素的长宽比例与原始图像的长宽比例不一致,那么多余部分将被剪去。
(1)space
在水平方向或垂直方向平铺背景图像时并不裁减掉图像超出背景的部分,也不会调整背景图像尺寸,而是自动调整图像与图像之间的间距。
(2)round
在水平方向或垂直方向平铺背景图像时并不裁减掉图像超出背景的部分,而是会自动调整背景图像的尺寸。
(3)浏览器支持
到目前为止:IE9以上、Chrome 、Opera浏览器支持该属性。
div{ background-repeat:space;//round }
在CSS3中可以在一个元素中显示多个背景图片,还可以将多个背景图片进行重叠显示,从而使得调整背景图像中所使用的素材变得更加容易。
div{ background-image:url(flowe-red.png),url(flower-green.png),url(sky.png); background-repeat:no-repeat,repeat-x,no-repeat; background-position:3% 98%,85%,center center,top; }
(1)使用background-image属性来指定图像文件的时候,指定的时候是按在浏览器中显示时图像叠放的顺序从上往下指定的,第一个图像文件是放在最上面的,最后指定的文件是放在最下面的。
(2)通过多个background-repeat属性与background-position属性的指定,可以单独指定背景图像中某个图像文件的平铺方式与放置位置。
(3)允许被多重指定并配合多个图像文件一起利用的属性如下:
background-image、background-repeat、background-position、background-size、background-clip、background-origin。
CSS3中,支持对于元素指定渐变色背景。所谓渐变是指从一种颜色慢慢过渡到另一种颜色。渐变分为线性渐变与放射性渐变。
background:linear-gradient(to bottom,orange,black)
使用linear-gradient函数实现线性渐变,函数中使用三个参数。
(1)第一个参数值:
to bottom:指定从上往下的渐变,默认渐变起点为元素顶端,渐变重点为元素底端。
to bottom right:指定从左上往右下的渐变,默认渐变起点为元素左上角,渐变终点为元素右下角。
to right:指定从左往右的渐变,默认渐变起点为元素左边,渐变重点为元素右边。
to up right:指定从左下往右上的渐变,默认渐变起点为元素左下角,渐变终点为元素右上角。
to up:指定从下往上的渐变,默认渐变起点为元素底端,渐变终点为元素顶端。
to up left:指定从右下往左上的渐变,默认渐变起点为元素右下角,渐变终点为元素左上角。
to left:指定从右往左的渐变,默认渐变起点为元素右边,渐变终点为原左边。
to bottom left:指定从右上往左下的渐变,默认渐变起点为元素右上角,渐变终点为元素左下角。
可指定一个角度,用于指定渐变线的旋转角度
(2)第二个参数值代表渐变的起点色,第三个参数代表渐变的终点色。
div{ width:300px; height:300px; background:linear-gradient(to bottom,orange,black)//从顶端到底端、从桔色到黑色的线性渐变 }
(3)将第一个参数指定为一个角度,其作用为修改渐变线的角度
background:linear-gradient(30deg,orange,black);
如果角度为0,则渐变线的方向为从下往上,当角度增加时渐变线顺时针方向旋转。
(4)可以在起点色或终点色后边指定离渐变色起点或渐变色终点的偏离位置(不指定时默认值分别为0%及100%)
background:linear-gradient(to bottom,orange 20%,black 70%);
表示从p元素的顶端往下20%,即离元素顶端300(元素高度)*20%=60像素处开始渐变,一直渐变到离元素底端30%(100%-70%),即离元素底端300*30%=90像素处停止渐变。
(5)可以添加多个渐变的中间点
background:linear-gradient(to bottom,orange 0%,red 25%,yellow 50%,green 75%,black 100%);
background:radial-gradient(orange,black);
使用radial-gradient函数实现放射性渐变,函数使用两个参数,分别为渐变起点色与渐变终点色。
div{ background:radial-gradient(orange,black);//从中心向外扩散,从桔色到黑色的放射性渐变; }
(1)可以通过circle关键字或ellipse关键字指定绘制渐变呈圆形向外扩散方式还是呈椭圆形向外扩散方式。
div{ background:radial-gradient(circle,orange,black);//指定圆形渐变方式 }
(2)可以通过at关键字指定渐变起点位置
background:radial-gradient( at left top,orange,black);
可指定如下选项值:
center center:从元素中心点向外扩散(默认选项值)
left top:从元素左上角向外扩散
center top:从元素顶部中央向外扩散
right top:从元素右上角向外扩散
right center:从元素右端中央向外扩散
right bottom:从元素右下角向外扩散
center bottom:从元素底部中央向外扩散
left bottom:从元素左上角向外扩散
坐标值:例如(30,50),从指定坐标点处向外扩散
background:radial-gradient(circle at center top,orange,black); background:radial-gradient( at 130px 50px,orange,black);
(3)指定渐变尺寸
closest-side:可渐变到离渐变起点最近的一条边。
farthest-side:可渐变到离渐变起点最远的一条边。
closest-corner:可渐变到离渐变起点最近的一个角。
farthest-corner:可渐变到离渐变起点最远的一个角。
background:radial-gradient( ellipse closest-side at 130px 50px,orange,black);
(4)可通过对圆形渐变指定半径的方法指定渐变尺寸
background:radial-gradient( circle 95px at 130px 50px,orange,black);
(5)可通过对椭圆形渐变指定横向半径及纵向半径的方法指定渐变尺寸
background:radial-gradient( ellipse 235px 95px at 130px 50px,orange,black);
(6)可通过添加多个渐变色并指定偏离百分比的方法在渐变起点与渐变终点中添加多个渐变中间点
background:radial-gradient( circle 130px at130px 50px,orange 0%,red 25%,yellow 50%,green 75%,black);
到目前为止:IE、Safari、Firefox、Opera、Chorme浏览器都支持这种绘制圆角边框的样式。
在CSS3中,使用该属性指定好圆角的半径就可以绘制圆角边框了。
div{ border:soild 5px blue; border-radius:20px; }
(1)指定两个半径
在浏览器中,将第一个半径作为边框左上角与右下角圆半径来绘制,第二个半径作为边框右上角与左下角的圆半径来绘制
border-radius:40px 20px;
(2)不显示边框的时候
在CSS3中,如果使用了border-radius属性但是把边框设定为不显示的时候,浏览器将把背景的4个角绘制为圆角
div{ border:none; border-radius:20px; }
(3)修改边框种类的时候
使用border-radius属性后,不管边框是什么种类,都会将边框沿着圆角曲线进行绘制。
div{ border:dashed 5px blue; border-radius:20px; }
(4)绘制四个角不同半径的圆角边框
border-top-left-radius属性:指定左上角半径
border-top-right-radius属性:指定右上角半径
border-bottom-right-radius属性:指定右下角半径
border-bottom-left-radius属性:指定左下角半径
div{ border:dashed 5px blue; border-top-left-radius:10px;//指定左上角半径 border-top-right-radius:20px;//指定右上角半径 border-bottom-right-radius:30px;//指定右下角半径 border-bottom-left-radius:40px;//指定左下角半径 }
CSS3中增加了一个border-image属性,可以让元素的长度或宽度处于随时变化状态的边框统一使用一个图像文件进行绘制。。使用border-image属性,会让浏览器在显示图像边框时,自动将所使用到的图像分割为9部分进行处理,这样就不需要页面制作者另外进行人工处理了。另外,页面中也不需要因此而使用较多的元素。
(1)浏览器支持
到目前为止:IE、Safari、Firefox、Opera、Chorme浏览器都支持border-image属性的使用。
(2)使用方法
border-image:url(图像文件的路径) A B C D(该属性中至少必须指定5个参数)
A、B、C、 D:表示当浏览器自动把边框所使用到的图像进行分割时的上边距、右边距、下边距以及左边距。
div{ border:solid 5px; border-image:url(borderimage.png) 18 18 18 18; width:300px; }
(3)使用border-image属性来指定边框宽度
CSS3中,除了可以使用border属性或border-width属性来指定边框的宽度外,还可以使用border-image属性来指定边框宽度。
border-image:url(图像文件的路径) A B C D/border-width
div{ border:solid; border-image:url(borderimage.png) 18 18 18 18/10px;(指定为相同宽度) //border-image:url(borderimage.png) 10/5px 10px 15px 20px;(四条边的边框指定为不同的宽度) width:300px; }
注意:在CSS3中,如果4个参数完全相同,可以只写一个参数,将其他三个参数省略。
(4)指定4条边中图像的显示方式
可以在border-image属性中指定元素4条边中的图像是以拉伸的方式进行显示,还是以平铺的方式进行显示,
border-image:url(图像文件的路径) A B C D/border-width topbottom leftright
topbottom:表示元素的上下两条边中图像的显示方式
leftright:表示元素的左右两条边中图像的显示方式
显示方式的值:
repeat:图像将以平铺的方式进行显示
stretch:图像将以拉伸的方式进行显示
round
div{ border-image:url(borderimage.png) 10/5px repeat strerch; width:300px; height:200px; }
(5)使用背景图像
在使用border-image属性的时候,仍然可以正常使用背景图片,但是为了不让边框图像挡住背景图像,需要使用中间为透明的边框图像,否则背景图像就有可能被边框图像的中央挡住部分或全体。
div{ background-image:url(bk.png); background-repeat:no-repeat; border-image:url("borderimage.png") 20 20 20 20 /5px; background-origin:border; border-radius:18px; width:711px; height:404px; }
热心网友 时间:2022-04-06 11:52
一、新增的选择器
CSS3新增的属性选择器 {除ie6外的大部分浏览器支持)
1 E[att^="val"] 属性att的值以"val"开头的元素 div[id^="nav"] { background:#ff0; }
2 E[att$="val"] 属性att的值以"val"结尾的元素
3 E[att*="val"] 属性att的值包含"val"字符串的元素
结构伪类选择器(过滤选择器)
(注:FireFox 1.5/2.0/3.0支持E:root,FireFox 3.0支持E:last-child、E:only-child、E:empty。
由于IE6/7/8不支持,没办法,选择合适的场合用吧。)
4 E:root 匹配文档的根元素,对于HTML文档,就是HTML元素
5 E:nth-child(n) 匹配其父元素的第n个子元素,第一个编号为1 p:nth-child(3) { color:#f00; }
6 E:nth-last-child(n) 匹配其父元素的倒数第n个子元素,第一个编号为1 p:last-child { background:#ff0; }
7 E:nth-of-type(n) 与:nth-child()作用类似,但是仅匹配使用同种标签的元素 p:nth-of-type(2){color:red;}选择父元素的第n个子元素p
8 E:nth-last-of-type(n) 与:nth-last-child() 作用类似,但是仅匹配使用同种标签的元素
9 E:last-child 匹配父元素的最后一个子元素,等同于:nth-last-child(1)
10 E:first-of-type 匹配父元素下使用同种标签的第一个子元素,等同于:nth-of-type(1)
11 E:last-of-type 匹配父元素下使用同种标签的最后一个子元素,等同于:nth-last-of-type(1)
12 E:only-child 匹配父元素下仅有的一个子元素,等同于:first-child:last-child或 :nth-child(1):nth-last-child(1) p:only-child { background:#ff0; }
13 E:only-of-type 匹配父元素下使用同种标签的唯一一个子元素,等同于:first-of-type:last-of-type或 :nth-of-type(1):nth-last-of-type(1)
14 E:empty 匹配一个不包含任何子元素的元素,注意,文本节点也被看作子元素 p:empty { background:#ff0; }
与用户界面(UI)有关的伪类(ie6 7 8不支持)
15 E:enabled 匹配表单中激活的元素
16 E:disabled 匹配表单中禁用的元素 input[type="text"]:disabled { background:#ddd; }
17 E:checked 匹配表单中被选中的radio(单选框)或checkbox(复选框)元素
18 E::selection 匹配用户当前选中的元素
级元素通用选择器
ie6不支持
19 E ~ F 匹配任何在E元素之后的同级F元素 p ~ ul { background:#ff0; }
反选伪类
(ie6 7 8 firefox3.0以下 Opera9.0不支持)
20 E:not(s) 匹配不符合当前选择器的任何元素 :not(p) { border:1px solid #ccc; }
:target 伪类
(ie6 7 8不支持)
21 E:target 匹配文档中特定"id"点击后的效果
二、css3新增属性
一. box-shadow(阴影效果)
使用:
box-shadow: 20px 10px 0 #000;
-moz-box-shadow: 20px 10px 0 #000;
-webkit-box-shadow: 20px 10px 0 #000;
支持:
FF3.5, Safari 4, Chrome 3
二. border-colors(为边框设置多种颜色)
使用:
border: 10px solid #000;
-moz-border-bottom-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-top-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-left-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-right-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
说明:
颜色值数量不固定, 且FF的私有写法不支持缩写: -moz-border-colors: #333 #444 #555;
支持:
FF3+
三. boder-image(图片边框)
使用:
-moz-border-image: url(exam.png) 20 20 20 20 repeat;
-webkit-border-image: url(exam.png) 20 20 20 20 repeat;
说明:
(1). 20 20 20 20 ---> 边框的宽度, 分别对应top, right, bottom, left边框, 改变宽度可以实现不同的效果;
(2). 边框图片效果(目前仅实现了两种):
repeat --- 边框图片会平铺, 类似于背景重复;
stretch --- 边框图片会以拉伸的方式来铺满整个边框;
(3). 必须将元素的边框厚度设置为非0非auto值.
支持:
FF 3.5, Safari 4, Chrome 3
四. text-shadow(文本阴影)
使用:
text-shadow: [<颜色><水平偏移><纵向偏移><模糊半径>] || [<水平偏移><纵向偏移><模糊半径><颜色>];
说明:
(1) <颜色>和<模糊半径>是可选的, 当<颜色>未指定时, 将使用文本颜色; 当<模糊半径>未指定时, 半径值为0;
(2) shadow可以是逗号分隔的列表, 如:
text-shadow: 2px 2px 2px #ccc, 3px 3px 3px #ddd;
(3) 阴影效果会按照shadow list中指定的顺序应用到元素上;
(4) 这些阴影效果有可能相互重叠, 但不会叠加文本本身;
(5) 阴影可能会跑到容器的边界之外, 但不会影响容器的大小.
支持:
FF 3.5, Opera 10, Safari 4, Chrome 3
五. text-overflow(文本截断)
使用:
text-overflow: inherit | ellipsis | clip ;
-o-text-overflow: inherit | ellipsis | clip;
说明:
(1) 还有一个属性ellipsis-word, 但各浏览器均不支持.
支持:
IE6+, Safari4, Chrome3, Opera10
六. word-wrap(自动换行)
使用:
word-wrap: normal | break-word;
支持:
IE6+, FF 3.5, Safari 4, Chrome 3
七. border-radius(圆角边框)
使用:
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
支持:
FF 3+, Safari 4 , Chrome 3
八. opacity(不透明度)
使用:
opacity: 0.5;
filter: alpha(opacity=50); /* for IE6, 7 */
-ms-filter(opacity=50); /* for IE8 */
支持:
all
九. box-sizing(控制盒模型的组成模式)
使用:
box-sizing: content-box | border-box; // for opera
-moz-box-sizing: content-box | border-box;
-webkit-box-sizing: content-box | border-box;
说明:
1. content-box:
使用此值时, 盒模型的组成模式是, 元素宽度 = content + padding + border;
2. border-box:
使用此值时, 盒模型的组成模式是, 元素宽度 = content(即使设置了padding和border, 元素的宽度
也不会变).
支持:
FF3+, Opera 10, Safari 4, Chrome 3
十. resize(元素缩放)
使用:
resize: none | both | horizontal | vertical;
说明:
1. 必须将元素的overflow属性设置为auto或hidden, 该属性才能起作用(overflow设置为visible时, 无效);
2. 属性值说明:
(1). none --> 禁用缩放;
(2). both --> 可同时缩放宽度和高度;
(3). horizontal --> 仅能缩放宽度;
(4). vertical --> 仅能缩放高度;
支持:
safari 4, chrome 3
十一. outline(外边框)
使用:
outline: 边框厚度 边框样式 边框颜色;
outline-offset: 偏移值;
说明:
outline-offset需要独立写, 简写是无效的.
支持:
FF3+, safari 4, chrome 3, opera 10
十二. background-size(指定背景图片的尺寸)
使用:
-o-background-size: [length | percentage] {1, 2};
-webkit-background-size: [length | percentage] {1, 2};
例如:
-o-background-size: 50px 60px;
-webkit-background-size: 50px 60px;
这会将背景图片的宽设置了50px, 高60px.
支持:
safari 4, chrome 3, opera 10
十三. background-origin(指定背景图片从哪里开始显示)
使用:
-webkit-background-origin: border | padding | content;
-moz-background-origin: border | padding | content;
说明:
(1) border --> 从border区域开始显示背景;
(2) padding --> 从padding区域开始显示背景;
(3) content --> 从content区域开始显示背景;
注意:
1. 必须先指定background属性, 然后才能指定该属性, 如果该属性出现在background属性之前,
会无效.
支持:
safari 4, chrome 3, FF 3+
十四. background-clip(指定背景图片从什么位置开始裁切)
使用:
-webkit-background-origin: border-box | padding-box | content-box | no-clip;
说明:
(1) border-box --> 从border区域向外裁剪背景;
(2) padding-box --> 从padding区域向外裁剪背景;
(3) content-box --> 从content区域向外裁剪背景;
(4) no-clip --> 不裁切背景.
注意:
1. 必须先指定background属性, 然后才能指定该属性, 如果该属性出现在background属性之前,
会无效.
支持:
safari 4, chrome 3
十五. background(为一个元素指定多个背景)
使用:
background: [background-image] | [background-origin] | [background-clip] | [background-repeat] | [background-size] | [background-position]
例子:
background: url(bg1.png) no-repeat left top, url(bg2.png) no-repeat right bottom;
支持:
safari 4, chrome 3
十六. hsl(通过色调, 饱和度, 亮度来指定颜色值)
使用:
hsl: ( <length> || <percentage> || <percentage>);
说明:
(1) length: h(色调), 0(或360)表示红色, 120表示绿色, 240表示蓝色;
(2) percentage: s(饱和度), 取值为0%到100%之间的值;
(3) percentage: l(亮度), 取值为0%到100%之间的值;
例子:
background: hsl(240, 50%, 100%);
color: hsl(100, 80, 100%);
支持:
safari 4, chrome 3, FF3, opera 10
十七. hsla(在hsl的基础上上增加了一个透明度设置)
使用:
hsla: ( <length> || <percentage> || <percentage> || <opacity>);
说明:
(1) opacity: a(透明度), 取值在0到1之间;
例子:
background: hsl(240, 50%, 100%, 0.5);
color: hsl(240, 50%, 100%, 0.5);
支持:
safari 4, chrome 3, FF3, opera 10
十八. rgba(基于r,g,b三个颜色通道来设置颜色值, 通过a来设置透明度)
使用:
rgba: (r, g, b, opacity);
说明:
(1) r: 红色, 正整数 | 百分数;
(2) g: 绿色, 正整数 | 百分数;
(3) b: 蓝色, 正整数 | 百分数;
(4) a: 透明度, 取值在0到1之间;
(5) 正整数在0到255之间, 百分数在0%到100%之间.
例子:
rgba: (100%, 244, 0, 0.5);
支持:
safari 4, chrome 3, FF3, opera 10
十九、 transition(a标签hover渐隐效果)
a:hover{transition: color 0.15s linear 0s, background-color 0.3s linear 0s;}
-webkit-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-moz-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-o-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-ms-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
热心网友 时间:2022-04-06 13:10
河南新华专注互联网教育三十二年 到校参观路费报销 免费试听课程!