CSS中属性可以继承及不可继承详解

html-css016

CSS中属性可以继承及不可继承详解,第1张

一、不能继承的属性

① 盒子模型所有属性:margin、padding、border、width、height。

② 轮廓及背景属性:outline、background。

③ 定位、显示、浮动属性:display、position、top、left、right、bottom、max-*(如max-height等)、overflow、clear、float、content、z-index。

④ 其他:vertical-align、text-decoration、text-shadow、white-space。

注意:内联元素不能继承:text-indent和text-align,但是块级元素可以。

二、元素可继承属性

① 所有元素可继承:visibility、cursor。

② 列表元素可继承:list-style、list-style-type、list-style-position、list-style-image。

③ 字体属性:line-height、color、font、font-family、font-size、font-style、font-variant、font-weight、font-size-adjust。

④ 文本属性:text-transform、direction,除了(text-decoration、text-shadow 内联元素不能继承 ) 块级 可继承。

⑤ 表格布局属性:caption-side、border-collapse、border-spacing、empty-cells、table-layout。

⑥ 其它属性:letter-spacing、word-spacing。

如果还有您知道的,希望可以留言补充。

如果喜欢,不要吝啬你的爱心“❤”哦!

background :背景。在css里面作为css属性一成员,通过该属性可设置背景图片、背景颜色、背景图片截取等样式。而仅仅一个background又具有多个子属性。

颜色名称,如: background-color:red

十六进制背景色,如: background-color:#f00

rgb颜色,这里如果是rgba,a表示透明程度,为0全透明,为1为完全不透明,

如: background-color:rgb(255,0,0.3)

特殊值:transparent,透明色: background-color:transparent

background-image属性用于为一个元素设置一个或多个背景图片,多个背景图片之间以逗号隔开。

一张图片: background-image: url(img/a.jpg)

多张图片: background-image: url(img/a.jpg),url(img/b.jpg)

特殊值:none,不显示背景图像

background-image: none

background-repeat 属性定义背景图像的重复方式。背景图像可以沿着水平轴,垂直轴,两个轴重复,或者根本不重复。

常用的4个值:

repeat:水平和垂直方向都重复图像, background-repeat: repeat

repeat-x:水平方向重复图像

repeat-y:垂直方向重复图像

no-repeat:图像不重复

规定背景图像是否固定或者随着页面的其余部分滚动。

scroll:背景图像相对于页面不动,会随着网页的滚动而移动,默认

fixed:背景图像相对于浏览器窗口不动,内容滚动的时候背景图像不动

background-attachment: fixed

第一个值为横坐标,第二个值为纵坐标。默认值为:(0% 0%)。

如果只指定了一个值,该值将用于横坐标。纵坐标将默认为50%。

例如: background-position: right; 代表背景图右侧,垂直方向居中的位置。

百分比位置,如:background-position: 20% 20%

具体像素位置, 如:background-position: 20px 20px

background-size 设置背景图片大小。图片可以保有其原有的尺寸,或者拉伸到新的尺寸,或者在保持其原有比例的同时缩放到元素的可用空间的尺寸。

单张图片的背景大小可以使用以下三种方法中的一种来规定:

当通过宽度和高度值来设定尺寸时,你可以提供一或者两个数值:

每个值可以是<length>, 是 <percentage>, 或者 [auto] 。

示例:

为了设定超过一张以上的图片尺寸时,需要提供多项数值,它们通过逗号分隔。

CSS部分 背景图片分辨率为427*640

分别给box的background-size属性添加不同的属性值,会产生不同的效果。

1、长度 :可以用px、em、rem等指定背景图片大小,不能为负值。

background-clip 裁剪,通常和background-origin一起使用,决定设置元素的背景(背景图片或颜色)是否显示。

注:background-clip只是将背景和背景色粗暴的裁剪。

该属性有四个值

border-box

背景延伸至边框外沿(但是在边框下层)。 background-origin: border-box

background-origin 规定了指定背景图片[ background-image ] 属性的原点位置的背景相对区域.

border-box

背景图片的摆放以border区域为参考

padding-box

背景图片的摆放以padding区域为参考

content-box

背景图片的摆放以content区域为参考

样式:

先看一下background-origin属性。

先看一下background-clip属性。

这就印证了background-clip只是将背景和背景色粗暴的裁剪。

好的,以上就是我对background的各个属性的理解,实际应用时可能会有部分出入,我们只需要掌握background-color、background-image、background-repeat、background-position、background-size这几个常用的属性即可。

欢迎大家一起交流,讨论。

position 这个属性决定了元素将如何定位。它的值大概有以下五种:

每个网页都可以看成是由一层一层页面堆叠起来的,如下图所示。

position 设置为 relative 的时候,元素依然在普通流中,位置是正常位置,你可以通过 left right 等移动元素。会影响其他元素的位置。

而当一个元素的 position 值为 absolute 或 fixed 的时候,会发生三件事:

把该元素往 Z 轴方向移了一层,元素脱离了普通流,所以不再占据原来那层的空间,还会覆盖下层的元素。

该元素将变为块级元素,相当于给该元素设置了 display: block(给一个内联元素,如 ,设置 absolute 之后发现它可以设置宽高了)。

如果该元素是块级元素,元素的宽度由原来的 width: 100%(占据一行),变为了 auto。

由此观之,当 position 设置为 absolute 或 fixed,就没必要设置 display 为 block 了。而且如果你不想覆盖下层的元素,可以设置 z-index 值 达到效果。

下面来看一下插件的'参数用法示例:

1. position:static

所有元素的默认定位都是:position:static,这意味着元素没有被定位,而且在文档中出现在它应该在的位置。

一般来说,不用指定 position:static,除非想要覆盖之前设置的定位。

CSS Code复制内容到剪贴板

#P-1 {

position:static

}

2. position:relative

如果设定 position:relative,就可以使用 top,bottom,left 和 right 来相对于元素在文档中应该出现的位置来移动这个元素。【意思是元素实际上依然占据文档中的原有位置,只是视觉上相对于它在文档中的原有位置移动了】

CSS Code复制内容到剪贴板

#P-1 {

position:relative

top:20px

left:-40px

}

3. position:absolute

当指定 position:absolute 时,元素就脱离了文档【即在文档中已经不占据位置了】,可以准确的按照设置的 top,bottom,left 和 right 来定位了。

CSS Code复制内容到剪贴板

#P-1a {

position:absolute

top:0

rightright:0

width:200px

}

4. position:relative + position:absolute

如果我们给 P-1 设置 relative 定位,那么 P-1 内的所有元素都会相对 P-1 定位。如果给 P-1a 设置 absolute 定位,就可以把 P-1a 移动到 P-1 的右上方。

CSS Code复制内容到剪贴板

#P-1 {

position:relative

}

#P-1a {

position:absolute

top:0

rightright:0

width:200px

}

5. 两栏绝对定位

现在就可以使用相对定位和绝对定位来做一个两栏布局了。

CSS Code复制内容到剪贴板

#P-1 {

position:relative

}

#P-1a {

position:absolute

top:0

rightright:0

width:200px

}

#P-1b {

position:absolute

top:0

left:0

width:200px

}

6. 两栏绝对定位定高

一种方案是给元素设定固定高度。但这种方案对大多数设计来说不太适合,因为一般我们不知道元素中会有多少文本,或者将要使用的精确的字号。

CSS Code复制内容到剪贴板

#P-1 {

position:relative

height:250px

}

#P-1a {

position:absolute

top:0

rightright:0

width:200px

}

#P-1b {

position:absolute

top:0

left:0

width:200px

}