8、显示模式转换

    技术2022-07-11  83

    显示模式转换

    相关概念显示模式转换

    一、相关概念

    ​ HTML中的每个元素(标签)都有一个属性display,dispaly属性有3个可选值,分别对应块级、行级、行内块,决定了元素的显示模式。

    1.1、块级元素

    ​ 块状元素代表性的就是div,h系列,<li>,<dt>,<dd>,<p> ,<form>,<ul>等等,都可以用div来实现。不过为了可以方便程序员解读代码,一般都会使用特定的语义化标签,使得代码可读性强,且便于查错。

    块级元素的特点:

    可以设置宽高,默认100%宽度。对margin属性的4个方向都有效对padding属性的4个方向都有效块级元素前后会自动换行,即多个块元素会排成一列。

    1.2、行级元素

    ​ 行内元素最常使用的就是span,其他的只在特定功能下使用,修饰字体<b>和<i>标签,还有<sub>和<sup>这两个标签可以直接做出平方的效果,而不需要类似移动属性的帮助,很实用。

    行级元素的特点:

    设置宽高无效。对margin属性仅设置左右方向有效,上下无效。对padding设置上下左右都有效,即会撑大空间。元素前后不会自动换行,即多个行内元素可以排成一行。

    1.3、行内块状元素

    ​ 行内块状元素综合了行级元素和块级元素的特性,但是各有取舍。因此行内块元素在日常的使用中,由于其特性,使用的次数也比较多。可以说综合了行、块的优点。

    行内快元素的特点:

    可以设置宽高对margin属性的4个方向都有效对padding属性的4个方向都有效元素前后不会自动换行,即多个行内块元素可以排成一行。

    二、显示模式转换

    块级元素——>>行内元素:display:inline行内元素——>>块级元素:display:block;行内元素——>>行内块:display:inline-block;

    2.1、块级元素——>>行内元素

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>块级标签转行内标签</title> <style type="text/css"> div{ width: 100px; height: 100px; background-color: red; display: inline; } </style> </head> <body> <div>谷歌</div> <!--它已经是行内标签了,所以宽高失效--> <div>https://www.google.com</div> </body> </html>

    2.2、行内元素——>>块级元素

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>块级标签转行内标签</title> <style type="text/css"> a{ width: 100px; height: 100px; background-color: red; display: block; } </style> </head> <body> <a href="https://www.baidu.com">百度一下</a><!--它已经是块级标签了,所以宽高生效--> </body> </html>

    2.3、行内元素——>>行内块

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>块级标签转行内标签</title> <style type="text/css"> a{ width: 100px; height: 100px; background-color: red; display: inline-block; margin: 20px; padding: 20px; } </style> </head> <body> <a href="https://www.baidu.com">百度一下</a> <span>this is 佐证</span> <!--它已经是行内块了,所以宽高和内外边距都生效了--> </body> </html>
    Processed: 0.017, SQL: 9