元素的显示模式及特性

文章目录

  • 块级元素
  • 行内元素
  • 行内块元素
  • 元素显示模式转换
  • 标签的嵌套

块级元素

显示特点:

  • 独占一行
  • 高度默认是父级元素的高度,高度效果默认有内容撑开

代表标签:

div 、 p、  h系列 、 ul  、li、  dl、  dt、  dd 、 form 、 header 、 hav 、 footer

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /*div块:独占一行:默认宽度为父级的100%;添加高度和宽度都生效 */
        div{
            width: 300px;
            height: 300px;
            background-color: pink;
            
        }
    </style>
</head>
<body>
    <div>未来可期</div>
    <div>前程似锦</div>
</body>
</html>

运行结果:

 

 (这里div的父级为body,如果不添加盒子的宽,盒子的宽度就是页面的宽度)

行内元素

显示特点:

  • 一行可以显示多个
  • 宽度和高度默认由内容撑开
  • 不可以设置宽高

代表标签:

a  、span 、 b、u、i、strong、ins、em、del

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 行内:不换行;设置宽高不生效;尺寸和内容的大小相同 */
        .box{
            width: 300px;
            height: 300px;
            background-color: green ;
            
        }
    </style>
</head>
<body>
    <span class="box">span</span>
    <a href="#" class="box">超链接</a>
    <em class="box">em</em>
    <u class="box">u</u>
    <i class="box">i</i>
    <s class="box">s</s>
    <strong class="box">strong</strong>
    <ins class="box">ins</ins>
    <del class="box">del</del>
</body>
</html>

运行结果:

 (如果改变字体大小,标签宽高也会改变)

例:

在style内添加此代码

 

运行结果:

行内块元素

显示特点:

  • 一行可以显示多个,但宽度不够时才会换行
  • 可以设置宽高

代表标签:
input、texttarea、button、select

注:img标签有行内块元素特点,但是chorm调试工具中显示结果是行内(inline)特点

示例1:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 一行可以显示多个,可以设置宽高,不加尺寸显示为原图大小 */
        
        .b{
            width: 300px;
            height: 300px;
            background-color:pink;
        }
    </style>
</head>
<body>
   
    <input type="">世界和平
    <textarea name="" id="" cols="30" rows="10">世界和平</textarea>
    <button class="b">世界和平</button>
    <button class="b">世界和平</button>
    <button class="b">世界和平</button>
    <select name="" id="">世界和平</select>
</body>
</html>

运行结果:

 示例2:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 一行可以显示多个,可以设置宽高,不加尺寸显示为原图大小 */
        img{
            width: 300px;
            height: 300px;
       
    </style>
</head>
<body>
    <img src="./草原三剑客.jpg" alt="">
    <img src="./草原三剑客.jpg" alt="">
    
</body>
</html>

运行结果:

 元素显示模式转换

目的:改变元素默认的显示特点,让元素符合布局要求

语法:

属性        

效果

使用频率
display:block;转化为块元素较多
display:inline-block;转化为行内块元素较多
display:inline;转化为行内元素较少

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /*div块:独占一行:默认宽度为父级的100%;添加高度和宽度都生效 */
        div{
            width: 300px;
            height: 300px;
            background-color:skyblue;
            
            /* 转换为行内块 ,特点:显示在一行里,依旧有宽高 */
            display: inline-block;

            
        }
    </style>
</head>
<body>
    <div>好好学习</div>
    <div>天天向上</div>
</body>
</html>

运行结果:

示例2 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /*div块:独占一行:默认宽度为父级的100%;添加高度和宽度都生效 */
        div{
            width: 300px;
            height: 20;
            background-color:aqua;
            
            

            /* 转化为行内,特点:显示在一行里,没有宽高 */
            display: inline;
        }
    </style>
</head>
<body>
    <div>醉后不知天在水</div>
    <div>满船清梦压星河</div>
</body>
</html>

运行结果:

标签的嵌套

HTML嵌套规范注意点:

  • 块级元素一般作为大容器,可以嵌套文本、块级标签、行内元素、行内块等但是不能嵌套div、p、h
  • a标签内部可以嵌套任意元素但是a标签不能嵌套a元素

 p和div、h系列标签不能互相嵌套

示例1:

<p>
        <div>div</div>
</p>
    <!-- 虽然照样可以运行,但是游览器会自动补</p>和<p> -->
    <!-- 此时p和div是并列关系 -->

运行结果:

打开检查会发现

此时p和div是并列标签

示例2:

 <!-- p里面不能包含h标签 -->
    <p>
        <h1>这是一个一级标题</h1>
    </p>

 运行结果:

 打开检查发现此时p和h1也是并列标签

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值