Twlig / issuesBlog

MIT License
3 stars 0 forks source link

行内元素和块级元素 #54

Open Twlig opened 2 years ago

Twlig commented 2 years ago

块级元素和行内元素的定义

块级元素

行内元素

行内元素与块级元素的区别

  1. 行内元素一行可以有多个。块级元素各占据一行。
  2. 块级元素可以包含行内元素和块级元素。行内元素不能包含块级元素,只能包含文本或者其它行内元素。
  3. 行内元素与块级元素属性的不同,主要是盒模型属性上:行内元素设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效

display属性

display属性用于设置元素的类型,主要就是block,inline,inline-block三种。前面提到的块级元素和行内元素分别就是block和inline。

inline-block

该值是新增的值,是行内块元素。如input、img元素。

inline-block存在的问题:存在间隙

    <!-- 写法一 -->
    <div>
        <a href="">我是a1</a>
        <a href="">我是a2</a>
    </div>
    <!-- 写法二 -->
    <div>
        <a href="">我是a1</a><a href="">我是a2</a>
    </div>

写法一中a1和a2之间会产生间隙。这是由于HTML 中的换行符、空格符、制表符等合并为空白符,字体大小不为 0 的情况下,空白符自然占据一定的宽度,使用inline-block或inline会产生元素间的空隙。而写法二没有换行就不会有空隙,但是不符合书写规范。

解决方法

常见的块级元素和行内元素

块级元素: div,form,h1,ul,ol,li,p

行内元素:img,span,input,select,a,em,b,button