css:元素显示模式(块元素、行内元素、行内块元素)
1、什么是元素的显示模式
作用:网页的标签非常多,在不同的地方会用到不同类型的标签,了解他们的特点可以更好地布局我们的网页
元素的显示模式就是元素以什么方式来进行显示,比如<div>自己独占一行,一行又可以放多个<span>
html一般分为块元素和行内元素两种类型
2、块元素
(1)常见的块元素:
常见的块元素有:<h1>-<h5>、<p>、<div>、<ul>、<ol>、<li>等
(2)特点
自己独占一行
高度、宽度、外边距以及内边距都可以控制
宽度默认是容器的100%
是一个容器级盒子,里面可以存放行内或者块级元素
(3)举例
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
div{
width: 300px;
height: 200px;
background-color: darkgoldenrod;
}
</style>
</head>
<body>
<div>你好,今天是星期天</div>
<p>123</p>
</body>
</html>
即使一行中还有其他元素,也不会在后面显示,而是重新开始新的一行
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
div{
height: 200px;
background-color: darkgoldenrod;
}
</style>
</head>
<body>
<div>你好,今天是星期天</div>
<p>123</p>
</body>
</html>
不设置宽度的时候默认占满整个浏览器
(3)注意
文字类内的元素不能使用块级元素,例如:<p>标签主要用于存放文字,因此<p>标签内部不能使用块级元素,特别是不能存放<div>,同理,<h1>---<h6>都是文字类块级标签,里面也不能存放其他块级元素
3、行内元素
常见的行内元素有<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span>等,其中<span>标签是最典型的行内标签,也可以称为内联元素
(1)相邻行内元素在一行上,一行可以显示多个行内元素
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
</style>
</head>
<body>
<span>你好</span>
<strong>hello</strong>
<a href="#">新闻</a>
</body>
</html>
(2)高度和宽度的设置时无效的:
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
span{
width: 200px;
height: 300px;
background-color: yellow;
}
</style>
</head>
<body>
<span>你好</span>
<strong>hello</strong>
<a href="#">新闻</a>
</body>
</html>
(3)默认的高度就是它的内容本身的元素:
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
strong{
width: 200px;
background-color: yellow;
}
</style>
</head>
<body>
<span>你好</span>
<strong>hello<br>niaho</strong>
</body>
</html>
(4)行内元素只能存放文本或其他行内元素:
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
strong{
width: 200px;
background-color: yellow;
}
</style>
</head>
<body>
<span>世上无难事,<strong>只要肯攀登</strong></span>
</body>
</html>
(5)链接标签里面不能再包含其它链接标签
(6)<a>标签可以存放块级元素
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
.div1{
width: 200px;
height: 100px;
background-color: yellow;
}
.div2{
width: 200px;
height: 200px;
background-color: red;
}
</style>
</head>
<body>
<a href="#">
<div class="div1"></div>
<div class="div2"></div>
</a>
</body>
</html>
4、行内块元素
在行内元素中有几个特殊的标签:<img/>、<input/>、<td>,他们同时具有块元素和行内元素的特点,称为行内块元素
(1)特点
和相邻行内元素在一行上(行内块),但是它们之间会有白色空隙,一行可以显示多个
默认宽度就是它本身内容的宽度
高度、行高、外边距以及内边距都可以控制
(2)示例
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
input {
height: 100px;
width: 200px;
}
</style>
</head>
<body>
<input type="text" />
<input type="text" />
</body>
</html>