CSS 布局之盒子模型

来源:互联网 发布:jsp连接数据库 编辑:程序博客网 时间:2024/05/18 04:54

CSS盒子模型

盒子模型是CSS控制页面时一个很重要的概念。只有很好地掌握了盒子模型以及其中每一个元素的用法,才能真正控制好页面中的各个元素。

所有页面中的元素都可以看成是一个盒子。

在CSS中,一个独立的盒子模型由content(内容),border(边框),padding(内边距)和margin(外边距)4部分组成。

在CSS中可以用很多长度单位,主要分成两种,一种是相对类型,一种是绝对类型。

1.       相对类型

(1)     PX:像素,由于它会根据设备的分辨率的多少而代表不同的长度,因此它属于相对类型比如:在800*600的分辨率设置一张图片的高为100PX,当同样的显示器换成1024*768的分辨率时,就会发现图片相对减小了,因为现在的100PX和以前的100PX代表的不一样了。

(2)     Em:设置以目前字符的高度为单位。(不常用)。比如h1{ margin:2em},就会以目前字符的两倍来显示。但是注意一点,em作为尺度单位时是以font-size属性为参考依据的,如果没font-size属性,就以浏览器默认的字符高度作为参考。

【p{ text-indent:2em; } 代表首行缩进2个字的距离。】

2.       绝对类型

所谓绝对,就是无论显示设备的分辨率是多少,都代表相同的尺度。无论在什么分辨率中设置像素。

其中的尺度单位:in(英寸),cm,mm,pt(点数),pc(印刷单位)1pc=12pt。

边框border,border会占据空间

Border的属性有3个,border-color颜色,border-width粗细,border-style样式。

其中border-style它可以设置为none无,hidden隐藏,dotted点线,dashed虚线,solid实线,double双线,groove凹槽ridge突脊或outset外凸。其中none、hidden都不显示border,二者效果完全相同,只是运用在表格中时,hidden可以用来解决边框冲突的问题。

 

盒子之间的关系

一个盒子的内部的关系不难理解,但是网页可能存在着大量的盒子,并且它们以各种关系相互影响着。

 

CSS规范的思路是,首先确定一种标准的排版模式,这样可以保证设置的简单化,各种网页元素构成的盒子按照这种标准的方式排列布局。【标准流、 浮动和定位

 盒子的浮动与定位

盒子的浮动

  在标准流中,一个块级元素在水平方向会自动伸展,直到包含它的元素的边界;而在竖直方向和兄弟元素依次排列,不能并排。使用‘浮动’方式后,块级元素的表现就会有所不同。

使用clear属性清除浮动的影响。

盒子的定位

Position属性可以设置为以下4个之一:

(1)       static:这是默认的属性值,也就是该盒子按照标准流(包括浮动方式)进行布局。

(2)       relative:称为相对定位,使用相对定位的盒子,的位置常以标准流的排版方式为基础,然后使盒子相对于它在原本的标准位置偏移指定的距离。相对定位的盒子仍在标准流中,它后面的盒子仍以标准方式对待他。

(3)       absolute:绝对定位,盒子的位置以它的包含框为基准进行偏移。绝对定位的盒子从标准流中脱离这意味着它们对其后的兄弟盒子的定位没有影响,其他的盒子就好像这个盒子不存在一样。

(4)       fixed:称为固定定位,它和绝对定位类似,只是以浏览器窗口为基准进行定位,也就是当拖动浏览器窗口的滚动条时,依然保持对象位置不变。

**相对定位

*效果:

¥¥绝对定位:如果没在父div中设置position:relative,这时是以浏览器窗口作为定位基准的。如果设置了,是以父div为基准的。

Absolute:


%%  fixed


  Z-Index空间位置

z-index属性用于调整定位时重叠块的上下位置,z-index值大的页面位于其值小的页面上方。

盒子的display属性

 

 

Web标准

网页主要右3部分组成:结构(struct)、表现(presentation)和行为(behavior)。

概括来说:“结构”决定网页””是什么”,‘表现’决定页面看起来是”什么样子”,而“行为”决定网页“行为”。


Html超文本标记语言,是用于描述网页文档的一种标记语言。

Css层叠样式表,又称风格样式表,它是用来进行网页风格设计的(如文字设为红色),它是一种依赖用来表现html或xml等文件式样的计算机语言。

JS是一种能让你的网页更加生动活泼的程序语言,你可以利用js轻易地做出亲切的欢迎讯息、有广告效果的跑马灯。增强网页的可观性。

 

6.1.5转换英文字母大小写

=英文 字母大小写转换,只需设定英文段落的text-transform属性。

P.one{ text-transform:capitalize;}单词首字母大写;

text-transform:lowercase;单词全部小写;

text-transform:uppercase;单词全部大写。

 

6.1.9设置字词间距

在英文中,文本是由单词构成的,而单词是由字母构成的,因此对于英文文本来说,要考虑单词内部的字母间距和单词之间的距离。

pletter-spacing:-1px;//控制字母间距,等于-1px比平时更紧密一些了。

 word-spacing:10px;//控制单词间距,等于10px;比平时距离大。}

 

6.1.10设置段落内部的文字行高

在css中使用line-height调整段落中行与行之间的距离。

假如:设置line-height:20px表示行高为20像素。

而设置line-height:130%表示行高为font-size的130%。

line-height:1.5表示行高为font-size的1.5倍。

6.2.5使图片与文字的最下端所在水平线对齐

 <p><imgsrc="demo.jpg"style=" vertical-align:text-bottom;" />lpsum</p>

vertical-align:垂直对齐。

6.3.4设置背景图像的位置

background-position0% 0%表示左上位置;[等同于从左上角开始截取]

50% 0%;靠上居中位置;

50% 50%; 正中位置;

(1)     第一个值用于设定水平方向的位置,可以选择left、center、right之一;

(2)     第二个值用于设定竖直方向的位置,可以选择top、center、bottom之一。

 

7.4鼠标指针效果

Cursor:pointer; hand; text;等很多

7.5列表符号

List-style-type:decimal;列表符号也可以是一个小图片list-tyle-image:url(icon1.jpg);

或者ulfont-size:0.9emcolor:#00458clist-style-type:none;}

libackground:url(lu.jpg)padding-left:25px;};

原创粉丝点击