浅析html5中css的元素类型:

从css的显示状态对标签进行分类,主要分为:块状元素、内联元素(包括行内元素)、可变元素。

1、默认情况下元素类型的特点:

块状元素特点:

  a.在页面中以矩形区域显示;

  b.自上而下(即纵向)排列,独占一行;

  c.可以设置宽高;

  d.一般情况下可以作为其他元素或内容的容器/父级。

内联元素的特点:

  a.在页面中最小单位也是矩形;

  b.在一行内(即横向)逐个排列;
  c.不可以添加宽高,其大小由内容撑开的;

  d.内联元素也符合盒模型的规则,但个别属性会出现问题。如,padding-top/bottom,margin-top/bottom。

清除距离的方法——1.加浮动;2.把所有元素放在一行写,但不方便使用。)

可变元素(这里只做了解即可):

  即根据上下文的显示来确定此元素是块状元素还是内联元素。如button,它既可以作为一个双标签使用:<botton> </botton>,也可以在表单里作为按钮使用。

2.分类:

块状元素:div(最常用的块状元素)、dl-dt-dd、form、h1-h6、hr、ol、ul、li、p、fieldset(表单字段集)、colgroup-col(表单列分组元素)、table-tr-td

内联元素:span、a、b、br、i、em、img、input、lable、strong、sup、sub、textrea(多行文本输入框)、u、select(项目选择)

3.元素类型的转换:

display属性:作用检索或设置元素生成的盒模型类型。

常用属性值:

a.display:block; 

b.display:inline; 

c.diaplay:none; 

注:li默认值为:list-item(列表元素)

  input默认值为:inline-block(行内块元素)

4.行内块元素属于内联元素里的特殊存在。

行内块元素的特点:

  a.可以设置宽高

  b.在一行内逐个显示,默认情况下元素之间有距离(可以通过float消除距离)。

  c.当前元素的display值为inline-block时,可以支持vertical-align属性,即垂直对齐----属性值:top bottom middle baseline(基线对齐)

常见的行内块元素包括:input、img(img在默认情况下,在浏览器中的display值为inline,但它是置换元素,可以直接设置大小,故作为行内块元素使用)

为什么能给img直接加宽高?

  因为img是置换元素。

  置换元素,如input   img  是依赖标签的属性或元素自身类型,来决定当前元素在页面中的显示状态。如input的text 、password、submit。 置换元素在页面显示过程中生成一个框架,这个框架可以直接添加大小。

 

运用:如何让一个元素在父元素里左右上下居中?

    步骤:1.给父元素添加text-align:center(左右居中)

       2.给当前元素添加display:inline-block;    vertical:middle;

       3.在当前元素后面不回车直接加一个空的span。给span设置样式:display:inline-block;   width:0;  height:100%;   vertical-align:middle;

逆战   前行!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>03</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        div{
            width: 600px;
            height: 600px;
            background: yellow;
            margin: 50px auto;
            text-align: center;
        }
        h3{
            /* display: block; */
            width: 300px;
            height: 300px;
            background: greenyellow;
            display: inline-block;
            vertical-align: middle;
        }
        span{
            /* display: block; */
            height: 100%;
            /* width:100px; */
            width: 0;
            background: pink;
            display: inline-block;
            vertical-align: middle;
        }
    </style>
</head>
<body>
    <div>
        <h3></h3><span></span>
    </div>
</body>
</html>

  

html5 元素剧中 html5元素的分类有哪些_块状元素