css样式box,CSS样式不包括

CSS布局相关——盒模型和浮动

在CSS中,所有元素被“ 盒子 ”所包围,利用盒模型的基本原理来实现CSS准确布局,元素排列等处理

站在用户的角度思考问题,与客户深入沟通,找到邕宁网站设计与邕宁网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广、域名注册虚拟主机、企业邮箱。业务覆盖邕宁地区。

CSS广泛使用的两种盒子,其在页面流和元素之间的关系表现为不同的行为:

对于定义为块级盒子(block)的元素会表现出以下行为:

对于定义为内联盒子(inline)的元素会表现出以下行为:

通过对盒子设置display的属性值,来控制盒子的外部显示类型

外部显示类型与内部显示类型

外部显示类型:决定盒子是块级还是内联,即决定了盒子之间的布局方式

内部显示类型:决定了盒子内部的元素是如何布局的,默认情况是按照正常文档流布局,也可以通过设置display值为flex和grid来改变内部元素之间的布局方式

不同显示类型的例子

block:

图中段落里的 span word /span 被设置为 display:block

因此其独占一行,宽度填满整个父元素

flex:

图中的列表被设置为 display:block ,每个列表是一个块级元素 —— 像段落一样 —— 会充满整个容器的宽度并且换行

inline-flex与inline

图中的列表被设置为 display:inline-flex ,使得在一些flex元素外创建一个内联框

最后设置两个段落为 display: inline , inline flex 容器和两个段落在同一行上,而不是像块级元素一样换行

CSS组成一个盒模型需要以下几个部分:

在标准模型中,如果你给盒设置 width 和 height,实际设置的是 content box。 padding 和 border 再加上设置的宽高一起决定整个盒子的大小

如果使用标准模型宽度 = 410px (350 + 25 + 25 + 5 + 5),高度 = 210px (150 + 25 + 25 + 5 + 5),padding 加 border 再加 content box

如果使用替代模型,一切都将变得简单很多,此时的 width 和 height 就是盒子可见的宽度与高度,无论怎么改变 padding 或 border 的值,都会通过压缩 conten box 的大小来保持 width 和 height 的值不变

如需使用,只需要声明以下CSS样式:

外边距是盒子周围一圈看不到的空间。它会把其他元素从盒子旁边推开。 外边距属性值可以为正也可以为负。设置负值会导致和其他内容重叠。无论使用标准模型还是替代模型,外边距总是在计算可见部分后额外添加

CSS:

html:

结果如下:因为上外边距设置为负值,所以两个边框会重叠

外边距折叠

理解外边距的一个关键是外边距折叠的概念。如果你有两个外边距相接的元素,这些外边距将合并为一个外边距,即最大的单个外边距的大小

结果如下,中间间隔的部分为50px

如下图所示,对内联盒子设置 width 和 height 都不会生效,虽然margin,padding和border会生效,但不会改变与其它内联盒子的关系,因此其内边距和边框会与段落的其它元素重叠

要避免上述情况,只需要将内联盒子的display值设置为inline-block即可

设置之后的效果为:

但因其保留有inline的特征,所以它不会跳转到新行

float可以使得当前元素脱离正常文本流,并吸附到父元素的左边(left)或者右边(right)正常布局中位于该浮动元素之下的内容,此时会围绕着浮动元素进行排列

基本的常见用途在于图片与文字环绕排版以及首字母下沉:

重点是这个,元素浮动具有一定的规则与限制

设置如下三个盒子(均以块级元素方式呈现):

将box1设置为向右浮动:

因为box1脱离正常文档流,所以box2和box3会向上填补box1的空位,box1浮动到父元素(body)的最右边

设置box1向左浮动:

同理,box1脱离正常文档流,box2与box3向上填补box1的空位,此时box1浮动到父元素(body)的最左边,所以会覆盖掉box2(浮动元素在正常流文档的上方)

设置box2向左浮动:

可以看到box3因为box2脱离正常文档流而向上填充其空位,box2因为浮动到左边覆盖了box3,然而box1仍处于正常文档流中,并且在html文件中最先声明,所以box2只能在box1的下方进行浮动(即使box2设置为向右浮动也是一样)

设置box1、box2与box3都向左浮动:

可以看到三个盒子均向左浮动,直到碰到前一个浮动框的边缘为止(对于box1来说是碰到父元素的边缘),因此呈现如此的排列状况

如果当父元素太窄,无法包含三个盒子的宽度,则无法容纳的元素向下移动,直到有足够的空间使得其能向某个方向浮动,如下图所示:

如果浮动元素的高度不同,那么当它们向下移动时可能被其它浮动元素“卡住”

相关参考:

浮动的规则先讨论到此

高度塌陷

在父元素container内设置一个盒子box1,此时没有设置浮动,box1会撑起父元素container的高度

如果此时设置box1浮动,因为其脱离了正常文档流,无法撑起盒子的高度,所以将发生高度塌陷:

为了解决这个问题,在此提供三种方法:

1. 添加额外标签

首先在父元素内添加空白内容的额外标签clearfix

然后再CSS规则中添加以下内容:

通过清除父元素内空白元素的浮动,使得父元素边框重新包含浮动内容

2. 父级元素添加overflow属性

直接在父元素内添加overflow属性:

同样可以清除浮动,结果如下:

3. after伪元素

html文档改为:

在CSS规则里添加:

CSS盒模型和box-sizing属性

标准CSS盒模型规定width和height样式属于给定内容区域的尺寸,并且不包含boder和padding,可以称此盒子为“内容盒模型"。在老版的IE里和新版的CSS中都有一些例外,再IE6之前和IE6~8“怪异模式”下显示一个页面时(页面中缺少 <IDOCTYPE 或有一个不够严格的 doctype 时),width和height属性确是包含boder和padding的。

IE的为是一个bug,但是IE的非标准盒模型通常也很有用。所以CSS3引进了 box-sizing 属性,默认值是 content-box ,它指定了上面描述的标准的盒模型。如果替换为 box-sizing:border-box ,浏览器将会为那个元素应用IE的盒模型,即width和height属性将包括border和padding,当想以百分比形式为元素是指总体尺寸,又想以像素单位指定border和padding时,边框盒模型特别有用

box-sizing 属性再当今所有浏览器中都支持,但是还没有不带前缀通用的实现。再Chrome和Safari中,使用 -webkit-box-sizing .在Firefox中,使用 -moz-box-sizing .在Opera和IE8及其更高的版本中,可以使用不带前缀的 box-sizing .

边框盒模型在未来CSS3中的一个可选方案是使用盒子尺寸计算值;

在IE9中支持使用 cale() 计算CSS的值,在Firefox为 -moz-cale()

CSS里面什么意思

是元素(DIV

a

li

ul

等)的CSS属性.ID是这个元素的唯一标识只能一个元素使用用,class是类其他的元素可以共用 你的那个BOX

是以BOX命名的一个ID属性

div#{color:red;}; 再如

class="center"

div.center

{float:left;}这种CSS样式

css中 box1 box2的这种声明是什么意思

1、第一种情况:

div class="box"/div

.box{color:red} 这种是定义div元素box的css样式。比如color:red定义box里面的文字是红色。

2、第二种情况:

div class="box"

div class="box1"红色文字/div

div class="box2"蓝色文字/div

/div

.box .box1{color:red} 定义元素box下的子元素box1的css样式。

.box .box2{color:blue} 定义元素box下的子元素box2的css样式。

CSS BOX有哪些属性

box属性 content 、padding 、margin 、background 、border

B选项不在里面。

常用重要CSS样式的属性

盒子模型是CSS中一个很重要的概念,页面中的所有元素都可以看成一个盒子,并占据一定的页面空间,一个页面由很多盒子组成,盒子之间会互相影响。只有掌握盒模型以及其中每个属性的用法,才能真正控制好页面元素。

盒子模型主要定义四个区域: 内容(content)、内边距/填充(padding)、边框(border)和外边距(margin) 。

盒子的内容区域存放文本和图片等页面元素,拥有如下属性:

边框基本属性:

通过一个属性设置四个方向边框的宽度、样式、颜色

属性:border

取值:width style color;

只设置某一条边框的宽度、样式、颜色

语法:border-方向(top/right/bottom/left):width style color;

只设置边框的宽度、样式、颜色中的一种

语法:border-属性(width/style/color):取值;

只设置某一条边框的宽度、样式、颜色中的一种

语法:border-方向(top/right/bottom/left)-属性(width/style/color):取值;

属性:border-radius

作用:设置倒角位置处圆的半径,半径越大,弧度越大。

取值:

属性:border-image

语法:

border-image-source :引入背景图片

取值:

默认值:无图片

url(图片URL地址)

border-image-slice :切割引入背景图片,把边框背景切成9份

取值:

number:默认单位px

百分比:

fill:保留边框图像的中间部分

border-image-width :指定边框图片的宽度

border-image-repeat :指定边框背景图片的排列方式,可定义2个参数,即水平和垂直方向

取值:

Stretch:默认值,拉伸

Repeat:平铺

Round:取整平铺

内容区域和边框(边缘)之间的距离

语法:padding: 值;

单边设置:padding-方向(top/right/bottom/left):值;

取值:

数值px

百分比

内边距的简写方式:

padding:value;

四个方向内边距的值均为value

padding:value1 value2;

Value1为上下内边距的值,value2为左右内边距的值

padding:value1 value2 value3;

Value1为上内边距的值,value2为左右内边距的值,value3为下内边距的值

padding:value1 value2 value3 value4;

上右下左内边距的值分别为value1, value2, value3, value4

外边距指元素与元素之间的距离,即围绕在元素边框之外的空白区域,通过外边距可以为元素创建额外的“空间”。默认不能被其他元素所占据,用于拉伸两个元素间的距离。

语法:margin: 值;

单边设置:margin-方向(top/right/bottom/left):值;

取值:

重新制定元素尺寸计算模式

属性:box-sizing

取值:

属性:resize

取值:

位于元素边框之外的一条线

属性:

outline:width style color;

属性:box-shadow

语法:

box-shadow: h-shadow v-shadow blur spread color inset;

取值:由一组值构成的值列表

属性:background-color

取值:颜色值或transparent

注意:背景颜色是从边框位置处开始绘制

属性:background-image

取值:url(背景图像URL)

属性:background-repeat

取值:

属性:background-attchment

取值:

scroll:默认值,滚动

fixed:固定

属性:background-position

取值:

属性:background-size

取值:

属性:background-origin

取值:

属性:background-clip

取值:

CSS3多背景通过为每个背景属性提供多个属性值实现。

font 简写属性语法:

将所有字体属性合写为一行,其中font-family是复合属性中必不可少的属性。

可以不设置其中的某个值,如果省略值地话,就使用属性的默认值。

②文本属性:

(2)CSS3文本阴影属性:

属性:text-shadow

作用:产生阴影和模糊主体

语法:

作用:定义列表的编号样式

属性:list-style-type

作用:用于设置列表项的图像属性

语法:

图像URL地址:图像的相对路径或绝对路径

none:默认值,不指定图像

注意:图片图标与文字之间的距离在不同浏览器中是不一样的,因此,一般情况下不采用这种方式来设置列表的图片样式。

通过设置li的背景图片的方式来设置列表图片基本步骤:

设置list-style-type属性值为none

设置li标记的背景属性backgruond

作用:用于声明列表标志相对于列表项内容的位置

语法:

作用:可以同时设定列表样式类型、列表样式位置、列表样式图片等属性的值。

语法:

注意:

可以不设置其中的某个值,未设置的属性采用默认值

同时指定list-style-image和list-style-type时,list-style-image优先显示,除非list-style-image设置为none,或图片路径错误无法显示

当列表与列表项目同时使用样式时,列表项目的样式优先显示

特点:

可以设置宽度和高度

默认情况下每个块级元素独占一行

作用:

块级元素主要用于页面布局

常用块级元素:

div、p、h1~h6、ol、ul等

特点:

不可以设置宽度和高度,其宽度就是自身文字或图片的宽度

默认情况下多个行内元素会在一行内显示,遇父元素边界时会自动换行

作用:

行内元素主要用于设置文样式

常用行内元素:

a、span、em、b、i、strong、img、input等

作用:控制页面元素脱离原有文档流,实现向左或向右移动,直到该元素外边缘碰到其包含框或另一个浮动框的边缘停止,标准流中的其他盒子将顶到浮动盒子的位置。浮动的元素不占据实际空间。

属性: float

取值:

浮动元素不会相互重叠;

浮动元素不会上下浮动,如果一个浮动元素在另一个浮动元素之后显示,而且会超出容纳块,则它下降到低于先前任何浮动元素的位置。

作用:规定元素的哪一侧不允许出现其他浮动元素。

取值:

作用:控制页面元素在页面中的位置。

属性:position

取值:static/relative/absolute/fiexed

默认属性值,元素按照标准文档流进行排列,块级元素独占一行, 行内元素位于一行内显示,一行显示不下,自动换行。

特点:

相对于自身原有位置进行偏移

仍处于标准文档流中

随即拥有偏移属性和z-idex属性

偏移属性:

left:数值px;

right:数值px;

top:数值px;

bottom:数值px;

当元素相对定位后会产生Z轴上的堆叠,不设置z-index属性时,默认该元素出现在X轴和Y轴构成的平面上。

特点:

建立了以包含块为基准的定位

绝对定位的元素的位置相对于最近的已定位祖先元素(设定了绝对定位、相对定位或固定定位中的任何一种),如果元素没有已定位的祖先元素,则该元素的位置相对于浏览器窗口。

完全脱离了标准文档流

随即拥有偏移属性和z-idex属性

偏移属性:

left:数值px;

right:数值px;

top:数值px;

bottom:数值px;

绝对定位未设置偏移量的特点:

无论是否存在已经定位的祖先元素,都保持在元素的初始位置

脱离了标准文档流

设定固定定位的元素框的表现类似于将position设置为absolute,不过其包含块是浏览器窗口本身。

在计算机显示中把垂直于屏幕平面的方向称为Z方向,CSS绝对定位容器的z-index属性即对应该方向。

作用:用于控制元素的层叠次序,使得某个元素浮于其他元素之上。

语法:

auto:遵循其父元素的定位

number:整数,可负,值大者叠加在上层

注意:使用z-index属性时,要求该元素的position属性值为absolute、relative或fixed。

作用:用于定义建立布局时元素生成的显示框类型

语法:dispaly:值;

作用:用于定义建立布局时元素生成的显示框类型

语法:visibility:值;


网页名称:css样式box,CSS样式不包括
文章来源:http://csdahua.cn/article/hocpod.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流