CSS 笔记——背景布局

时间:2023-02-05 19:18:53

4. 背景布局

-> 背景

(1)background

基本语法

background : background-color ||  background-image || background-repeat || background-attachment ||  background-position

语法取值

该属性是复合属性。请参阅各参数对应的属性。
默认值为:transparent none repeat scroll 0% 0%。

使用说明

设置对象的背景样式。如使用该复合属性定义其单个参数,则其他参数的默认值将无条件覆盖各自对应的单个属性设置。例如:设置 background : white 等于设置 background : white none repeat scroll 0% 0% 。如果在此之前设置了 background-image 属性,则其设置将被 background-image 的默认值 none 覆盖。背景样式属性的作用区域为对象的内容区域与内边距( padding )区域。不包括边框( border )与外边距( margin )区域。尽管该属性不可继承,但如果未指定,其父对象的背景颜色和背景图将在对象下面显示。

(2)background-color

基本语法

background-color : transparent | color

语法取值

transparent  :  默认值。背景色透明
color :  指定颜色。

使用说明

设置或检索对象的背景颜色。当背景颜色与背景图像( background-image )都被设定了时,背景图片将覆盖于背景颜色之上。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(3)background-image

基本语法

background-image : none | url ( url )

语法取值

none         :  默认值。无背景图
url ( url ) :  使用绝对或相对 url 地址指定背景图像

使用说明

设置或检索对象的背景图像。当背景图像与背景颜色( background-color )都被设定了时,背景图片将覆盖于背景颜色之上。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(4)background-repeat

基本语法

background-repeat : repeat | no-repeat | repeat-x | repeat-y

语法取值

repeat     :  默认值。背景图像在纵向和横向上平铺
no-repeat :  背景图像不平铺
repeat-x :  背景图像仅在横向上平铺
repeat-y :  背景图像仅在纵向上平铺

使用说明

设置或检索对象的背景图像是否及如何铺排。必须先指定对象的背景图像( background-image )。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(5)background-attachment

基本语法

background-attachment : scroll | fixed

语法取值

scroll  :  默认值。背景图像是随对象内容滚动
fixed :  背景图像固定

使用说明

设置或检索背景图像是随对象内容滚动还是固定的。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(6)background-position

基本语法

background-position : length || length
background-position : position || position

语法取值

length    :  百分数 | 由浮点数字和单位标识符组成的长度值。
position :  top | center | bottom | left | center | right

使用说明

设置或检索对象的背景图像位置。必须先指定 background-image 属性。该属性定位不受对象的边距属性( padding )设置影响。默认值为: 0% 0% 。此时背景图片将被定位于对象不包括边距( padding )的内容区域的左上角。

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

如果指定了两个值,第二个值将用于纵坐标。

如果设置值为 right center ,因为 right 作为横坐标值将会覆盖 center 值,所以背景图片将被居右定位。

(7)background-position-x

基本语法

background-position-x : length | left | center | right

语法取值

length  :  百分数 | 由浮点数字和单位标识符组成的长度值。
left :  居左
center :  居中
right :  居右

使用说明

设置或检索对象的背景图像横坐标位置。必须先指定 background-image 属性。该属性定位不受对象的边距属性( padding )设置影响。默认值为: 0% 。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(8)background-position-y

基本语法

background-position-y : length | top | center | bottom

语法取值

length  :  百分数 | 由浮点数字和单位标识符组成的长度值。
top :  居顶
center :  居中
bottom :  居底

使用说明

设置或检索对象的背景图像纵坐标位置。必须先指定 background-image 属性。该属性定位不受对象的边距属性( padding )设置影响。默认值为:0% 。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(9)layer-background-color

layer-background-color : transparent | color

语法取值

transparent  :  默认值。背景色透明。
color :  指定颜色。

使用说明

设置或检索对象整个区域的背景颜色。

(10)layer-background-image

layer-background-image : none | url ( url )

语法取值

none         :  默认值。无背景图。
url ( url ) :  使用绝对或相对 url 地址指定背景图像。

使用说明

设置或检索对象整个区域的背景图像。

-> 布局

(1)clear

clear : none | left | right | both

语法取值

none   :  默认值。允许两边都可以有浮动对象
left :  不允许左边有浮动对象
right :  不允许右边有浮动对象
both :  不允许有浮动对象

使用说明

该属性的值指出了不允许有浮动对象的边。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(2)float

float : none | left | right

语法取值

none   :  默认值。对象不飘浮
left :  文本流向对象的右边
right :  文本流向对象的左边

使用说明

该属性的值指出了对象是否及如何浮动。当该属性不等于 none 引起对象浮动时,对象将被视作块对象( block-level ),即 display 属性等于 block 。也就是说,浮动对象的 display 属性将被忽略。跟随浮动对象的对象将移动到浮动对象的位置。浮动对象会向左或向右移动直到遇到边框( border )、内边距( padding )、外边距(

margin ) 或者另一个块对象( block-level )为止。

在IE5+中, div 和 span 对象假如没有指定宽度会被分配默认的宽度,而在此前的浏览器版本中则必须指定宽度值才可以呈递此属性。此属性对于 currentStyle

对象而言是只读的。对于其他对象而言是可读写的。

(3)clip

clip : auto | rect ( number number number number )

语法取值

auto  :  默认值。对象无剪切
rect ( number number number number ) :  依据上-右-下-左的顺序提供自对象,左上角为(0,0)坐标计算的四个偏移数值,其中任一数值都可用 auto 替换,即此边不剪切。

使用说明

检索或设置对象的可视区域。可视区域外的部分是透明的。此属性定义了绝对(absolute)定位对象可视区域的尺寸。必须将 position 属性的值设为 absolute ,此属性方可使用。自IE5开始,此属性在MAC平台上可用。

(4)overflow

overflow : visible | auto | hidden | scroll

语法取值

visible  :  默认值。不剪切内容也不添加滚动条。假如显式声明此默认值,对象将以包含对象的 window 或 frame 的尺寸裁切。并且 clip 属性设置将失效
auto :  在必需时对象内容才会被裁切或显示滚动条
hidden :  不显示超过对象尺寸的内容
scroll :  总是显示滚动条

使用说明

检索或设置当对象的内容超过其指定高度及宽度时如何管理内容。所有对象的默认值是 visible ,除了 textarea 对象和 body 对象的默认值是 auto 。设置 textarea 对象此属性值为 hidden 将隐藏其滚动条。对于 table 来说,假如 table-layout 属性设置为 fixed ,则 td 对象支持带有默认值为 hidden 的 overflow 属性。如果设为 scroll 或者 auto ,那么超出 td 尺寸的内容将被剪切。如果设为 visible ,将导致额外的文本溢出到右边或左边(视 direction 属性设置而定)的单元格。

自IE5开始,此属性在MAC平台上可用。自IE6开始,当你使用 !DOCTYPE 声明指定了 standards-compliant 模式,此属性可以应用于 html 对象。

(5)overflow-x

overflow-x : visible | auto | hidden | scroll

语法取值

visible  :  默认值。不剪切内容也不添加滚动条。假如显式声明此默认值,对象将以包含对象的 window 或 frame 的尺寸裁切。并且 clip 属性设置将失效
auto :  在必需时对象内容才会被裁切或显示滚动条
hidden :  不显示超过对象尺寸的内容
scroll :  总是显示滚动条

使用说明

检索或设置当对象的内容超过其指定宽度时如何管理内容。所有对象的默认值是 visible ,除了 textarea 对象和 body 对象的默认值是 auto 。设置 textarea 对象此属性值为 hidden 将隐藏其滚动条。对于 table 来说,假如 table-layout 属性设置为 fixed ,则 td 对象支持带有默认值为 hidden 的 overflow 属性。如果设为 scroll 或者 auto ,那么超出 td 尺寸的内容将被剪切。如果设为 visible ,将导致额外的文本溢出到右边或左边(视 direction 属性设置而定)的单元格。

自IE5开始,此属性在MAC平台上可用。自IE6开始,当你使用 !DOCTYPE 声明指定了 standards-compliant 模式,此属性可以应用于 html 对象。

(6)overflow-y

overflow-y : visible | auto | hidden | scroll

语法取值

visible  :  默认值。不剪切内容也不添加滚动条。假如显式声明此默认值,对象将以包含对象的 window 或 frame 的尺寸裁切。并且 clip 属性设置将失效
auto :  在必需时对象内容才会被裁切或显示滚动条
hidden :  不显示超过对象尺寸的内容
scroll :  总是显示滚动条

使用说明

检索或设置当对象的内容超过其指定宽度时如何管理内容。所有对象的默认值是 visible ,除了 textarea 对象和 body 对象的默认值是 auto 。设置 textarea 对象此属性值为 hidden 将隐藏其滚动条。对于 table 来说,假如 table-layout 属性设置为 fixed ,则 td 对象支持带有默认值为 hidden 的 overflow 属性。如果设为 scroll 或者 auto ,那么超出 td 尺寸的内容将被剪切。如果设为 visible ,将导致额外的文本溢出到右边或左边(视 direction 属性设置而定)的单元格。

自IE5开始,此属性在MAC平台上可用。自IE6开始,当你使用 !DOCTYPE 声明指定了 standards-compliant 模式,此属性可以应用于 html 对象。

(7)display

display : block | none | inline | compact | marker | inline-table | list-item | run-in | table | table-caption | table-cell | table-column | table-column-group | table-footer-group | table-header-group | table-row | table-row-group

语法取值

block               :  CSS1  块对象的默认值。将对象强制作为块对象呈递,为对象之后添加新行
none :  CSS1 隐藏对象。与 visibility 属性的hidden值不同,其不为被隐藏的对象保留其物理空间
inline :  CSS1 内联对象的默认值。将对象强制作为内联对象呈递,从对象中删除行
inline-block :  IE5.5 将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内
compact :  CSS2 未支持。分配对象为块对象或基于内容之上的内联对象
marker :  CSS2 未支持。指定内容在容器对象之前或之后。要使用此参数,对象必须和 :after 及 :before 伪元素一起使用
inline-table :  CSS2 未支持。将表格显示为无前后换行的内联对象或内联容器
list-item :  CSS2 将块对象指定为列表项目。并可以添加可选项目标志
run-in :  CSS2 未支持。分配对象为块对象或基于内容之上的内联对象
table :  CSS2 未支持。将对象作为块元素级的表格显示
table-caption :  CSS2 未支持。将对象作为表格标题显示
table-cell :  CSS2 未支持。将对象作为表格单元格显示
table-column :  CSS2 未支持。将对象作为表格列显示
table-column-group :  CSS2 未支持。将对象作为表格列组显示
table-header-group :  CSS2 将对象作为表格标题组显示
table-footer-group :  CSS2 将对象作为表格脚注组显示
table-row :  CSS2 未支持。将对象作为表格行显示
table-row-group :  CSS2 未支持。将对象作为表格行组显示

使用说明

设置或检索对象是否及如何显示。

  • 对于下列元素来说,此属性的默认值为 block : ADDRESS QUOTE BODY XMP CENTER COL COLGROUP DD DIR DIV DL DT FIELDSET FORM Hn HR IFRAME LEGEND LISTING MARQUEE MENU OL P PLAINTEXT PRE TABLE TD TH TR UL

  • 对于下列元素来说,此属性的默认值为 none : BR FRAME nextID TBODY TFOOT THEAD

  • 对于下列元素来说,此属性的默认值为 list-item : LI

  • 其他元素默认值都是 inline 。

  • 在IE6.0以前的版本中, LI 对象的默认值为 block 。

  • 在IE4.0中, block , inline , list-item 值不被支持。但是对象仍然会被呈递。

  • 在IE5.0中开始支持 block 和 inline 。

  • 在IE5.5中开始支持 inline-block 。你可以使用 inline-block 使对象获得布局而无需指定确切的高( height )和宽( width )。

  • 在IE6.0中开始支持 list-item 。

  • 所有可视的文档对象都是块对象(block element)或者内联对象(inline element)。例如, div 是一个块对象。 span 是一个内联对象。块对象的特征是从新的一行开始且能包含其他块对象和内联对象。内联对象被呈递时不会从新行开始,能够包含其他内联对象和数据。

  • 改变此属性值对其周围内容布局的影响可能是:

  • 在属性值设为 block 的对象后面添加新行。

  • 从属性值设为 inline 的对象中删除一行。

  • 隐藏属性值设为 none 的对象并释放其在文档中的物理空间。

  • table-header-group 和 table-footer-group 属性值可用来指定当表格( table )跨越了多页时, tHead 和 tFoot 对象的内容在每一页都显示。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。

(8)visibility

visibility : inherit | visible | collapse | hidden

语法取值

inherit   :  默认值。继承父对象的可见性
visible :  对象可视
collapse :  未支持。主要用来隐藏表格的行或列。隐藏的行或列能够被其他内容使用。对于表格外的其他对象,其作用等同于 hidden。
hidden :  对象隐藏

使用说明

设置或检索是否显示对象。与 display 属性不同,此属性为隐藏的对象保留其占据的物理空间。在IE5.0+中,当父对象不可视时子对象是能被设为可视的。而在此前的浏览器版本中,如果希望对象为可视,其父对象也必须是可视的。

此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。