Day18 CSS文本样式
一.元素可见性
使用 visibility 属性可以实现元素的可见性,这种样式一般可以配合JavaScript
来实现效果。样式表如下:
//设置元素隐藏,但占位
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>。
//将行内元素转成块级元素
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 属性建立盒子的浮动方向,样式表如下:
//实现联排效果
#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 版本
float none 允许两边均可浮动 1
left 左边界不得浮动 1
right 右边界不得浮动 1
both 两边都不得浮动 1
//两边均不可浮动
#c {
background: navy;
clear: both;
}