css块元素,行内元素,行内块元素详解

CSS元素显示模式(块元素,行内元素,行内块元素)

块元素

常见块元素:<h1> <p> <div> <ul> <ol> <li> <form>以及html5语义化标签<header> <footer> <nav> <article> <section>等等, 其中<div>是最典型的块元素

块元素特点:

  • 独占一行

  • 可以设置高度,宽度,外边距以及内边距

  • 宽度默认是父级宽度

  • 是一个容器盒子里面可以放行内元素或者块级元素

注意:

  • 文字类的元素里面不允许放块级元素。如:<p>标签里面不能放块级元素特别是div

  • 同理,h1~h6里面也不能放块级元素

行内元素(也称为内联元素)

行内元素:一行排列多个,不能设置宽高

常见的行内元素有:<a> <strong> <b> <em> <i> <del> <s> <ins> <u> <span> <label> <button> <br> <font>等等,其中<span>是最典型的行内元素

行内元素的特点:

  • 相邻的行内元素在一行上面,一行可以显示多个行内元素

  • 宽高直接设置是无效的

  • 默认宽度就是他本身的宽度

  • 行内元素只能容纳文本或其他行内元素


注意:行内元素里面不能放块元素

​ 链接里面能不能放链接

​ 行内元素的上下外边距不生效,左右外边距生效

小技巧:想让行内元素和行内块元素水平居中,只需要给其父元素添加 text-align: center 即可

行内块元素

在行内元素里面有几个特殊的标签----<img/> ,<input>,<td>,<textarea>,<select>他们同时拥有块元素和行内元素的特点。有些资料称他们为行内块元素

行内块元素的特点:

  • 相邻的行内元素(或行内块元素)在一行上面,他们之间会存在空白缝隙。

  • 一行可以显示多个

  • 默认宽度就是他们本身的宽度(行内元素特点)

  • 高度,行高,内外边距都可以控制(块级元素的特点)

img其实是行内元素,只是img本身自带width属性,我们把它归类于行内块元素,它属于特殊的行内块元素

input属于纯行内块元素

拓展:

  • 浏览器会把行内元素和行内块元素识别成文字

  • text-align:center;可作用于行内元素和行内块元素上

  • margin:0 auto;可作用于块级元素上

  • 垂直排列的块级元素,添加相对方向的外边距,优先执行较大的,忽略较小的。

元素显示模式的相互转换(重点)

例:把<a>转换成块级元素,这样就可以设置 a 的宽高,增加 a 的点击范围

  • 转换为块级元素 display:block

  • 转换为行内元素 display:inline

  • 转换为行内块元素 display:inline-block

  练习:
 <style>
    a {
      width: 230px;
      height: 40px;
      background-color: #55585a;
      display: block;
      font-size: 14px;
      color: white;
      text-decoration: none;
      padding-left: 20px;
      line-height: 40px
    }

    a:hover {
      background-color: #ff6700;
    }
  </style>
</head>

<body>
  <a href="#">这是一个a标签</a>
  <a href="#">这是一个a标签</a>
  <a href="#">这是一个a标签</a>
  <a href="#">这是一个a标签</a>
  <a href="#">这是一个a标签</a>
  <a href="#">这是一个a标签</a>

</body>

小技巧:让文字的行高等于盒子的高度可以实现文字在盒子里面垂直居中

line-height: 盒子高度;

标签嵌套规则

注意点:

  1. 块级元素一般作为大容器,可以嵌套文本,块级元素,行内元素,行内块元素

    • 但是:p标签和h1~h6标签里面不能嵌套块级标签,可以嵌套行内元素和行内块元素

  2. a标签内部可以嵌套任何元素

    • 但是:a标签不能嵌套自己

  3. 行内元素只能嵌套行内元素

居中方式的总结

行内元素和行内块元素想要通过 margin:0 auto;完成水平居中需要转换为块级元素

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值