[08]CSS 盒模型 (下)

一.元素可见性

HTML5 中 CSS 盒模型,了解元素的外观配置以及文档的整体布局。

使用 visibility 属性可以实现元素的可见性,这种样式一般可以配合 JavaScript来实现效果。样式表如下:

属性说明CSS 版本
visibilityvisible默认值,元素在页面上可见。2
~hidden元素不可见,但会占据空间。2
~collapse元素不可见,隐藏表格的行与列,如果不是表格,则和 hidden 一样。2
//设置元素隐藏,但占位
div {
    visibility: hidden;
}

//隐藏表格的行或列,但不占位,Chrome 和 Opera 不支持
table tr:first-child {
    visibility: collapse;
};

二.元素盒类型

CSS 盒模型中的display 属性,可以更改元素本身盒类型。那么元素有哪些盒类型呢?

主要有:1.块级元素(区块);2 行内元素(内联);3 行内-块级元素(内联块);4.隐藏元素。

1. 块级元素

所谓块级元素,就是能够设置元素尺寸、隔离其他元素功能的元素。比如:<div><p>等文档元素。

2. 行内元素

所谓行内元素,不能够设置元素尺寸,它只能自适应内容、无法隔离其他元素,其它元素会紧跟其后。比如:<span><b>等文本元素。

3. 行内- 块元素

所谓行内-块元素,可以设置元素尺寸,但无法隔离其他元素的元素。比如<img>

属性说明CSS 版本
displayblock盒子为块级元素1
~inline盒子为行内元素1
~inline-block盒子为行内-块元素2
~none盒子不可见,不占位1
//将行内元素转成块级元素
span {
    background: silver;
    width: 200px;
    height: 200px;
    display: block;
}

//将块级元素转换成行内元素
div {
    background: silver;
    width: 200px;
    height: 200px;
    display: inline;
}

//将块级元素转化成行内-块元素
div {
    background: silver;
    width: 200px;
    height: 200px;
    display: inline-block;
}

//将元素隐藏且不占位
div {
    display: none;
}

display 属性还有非常多的值,有些后面部分,而有些支持度不好或者尚不支持,从而省略。有兴趣的,可以参考 CSS3 手册。

三.元素的浮动

CSS 盒模型有一种叫浮动盒,就是通过 float 属性建立盒子的浮动方向,样式表如下:

属性说明CSS 版本
floatleft浮动元素靠左1
~right浮动元素靠右1
~none禁用浮动1
//实现联排效果
#a {
    background: gray;
    float: left;
}

#b {
    background: maroon;
    float: left;
}

#c {
    background: navy;
    float: left;
}

//实现元素右浮动
#c {
    background: navy;
    float: right;
}

//取消元素的浮动
#c {
    background: navy;
    float: none;
}

刚才的浮动有一个问题:当一个元素盒子被浮动后,下面的元素会自动堆叠处理,导致元素不可见或部分不可见。我们可以使用 clear 属性来处理。

属性说明CSS 版本
clearnone允许两边均可浮动1
~left左边界不得浮动1
~right右边界不得浮动1
~both两边都不得浮动1
//两边均不可浮动
#c {
    background: navy;
    clear: both;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值