内联元素与块级元素

  • 块级元素(block):

    1. 新行开始;
    2. 高度,行高以及外边距和内边距都可控制;
    3. 宽度缺省是它的容器的100%
    4. 可以嵌套内联元素和其他块元素
    5. 常用的块级元素:div、h1~h6、dl、ul、ol
  • 内联元素(inline):
  1. 和其他元素都在一行上;
  2. 宽度就是它的文字或图片的宽度,不可改变
  3. 内联元素只能容纳文本或者其他内联元素
  4. 常用的内联元素:a、span、img、input、lable、select、strong、textarea

其中内联元素的宽高及内外边距有一些需要主要注意的地方

<input type="text">
<input type="text" style="padding-left:100px;margin-left:50px;padding-top:50px;width:100px;" value="padding-left:100px;margin-left:50px;padding-top:50px;width:100px;">
<input type="text">

显示效果:

而:

<span>第一个</span>
<span style="padding-left:100px;margin-left:50px;padding-top:50px;width:100px;">第二个</span>
<span>第三个</span>

显示效果:

=> <input><span>同为内联元素,为什么<input>可以设置宽高,内外边距,而<span>不能呢?

这是因为:

内联元素中含有两类:替换元素和非替换元素

  • 替换元素:

替换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容。

例如浏览器会根据<img>标签的src属性的值来读取图片信息并显示出来,而<img>只是指向一个图像文件,又如<input>标签的type属性来决定是显示输入框,还是单选按钮等。

  • 非替换元素:

指内容包含在文档中的元素。

例如,如果一个段落的文本内容都放在该元素本身之内,则这个段落就是一个非替换元素。

讨论内外边距对行内元素是否起作用,则要对行内替换元素和行内非替换元素分别讨论:

  1. 明确外边距可以应用到行内元素
  2. 向一个内联非替换元素应用外边距,对行高(line-height)没有任何影响
  3. 向一个内联非替换元素应用内边距上下边距时,对行高(line-height)没有任何影响,但当应用左右边距时,会对显示效果有影响,因此可以设置padding-left/right,margin-left/right
    <style type="text/css">#two{background-color: red;width:100px;   margin-right:50px;padding-left:50px;}</style><span id="one">1111</span><span id="two">2222</span><span id="three">3333</span>

    效果:

4.当一个内联非替换元素应用外边距,由于其外边距是透明而行高无影响,所以不显示视觉效果,但当上色时,由于内边距是非透明的,因此可以显示出效果

<style type="text/css">#two{background-color: red;margin-top:50px;padding-bottom: 50px;}</style><span id="one">1111</span><span id="two">上下对行高均无影响,但padding可显色</span><br /><span id="three">除去行高区域外均不占文本流空间</span>

效果:

5.对于一个内联替换元素而言,为其设置的内外边距等实际上是为其替换元素所设置的,会影响到替换元素的尺寸边距,从而影响到行高,因此可以设置margin和padding

转载于:https://www.cnblogs.com/alia/p/4733985.html

内联元素与块级元素及内外边距的影响相关推荐

  1. html中内联元素和块级元素的区别(整理版)

    块级元素和内联元素的主要区别 块级元素 内联元素(即行内元素) 总是在新行上开始,独占一行默认情况下,宽度自动填满其父元素 相邻的行内元素会排列再同一行里,直到一行排不下,才会换行,宽度随元素的内容而 ...

  2. 行内元素和块级元素:内联(行级)元素不能设置margin-top

    内联(行级)元素 不能设置宽高,但padding属性可以设置,需要注意的是行级元素不能设置margin-top和margin-bottom属性,但可以设置margin-left和margin-righ ...

  3. css 内联元素、块级元素、内联块级元素

    对于display我想很多人都不陌生,然而在谈到内联元素,行内元素等词,还是会有人脑袋瓜子充满了疑问???我曾经自以为已经了解并懂得如何使用display,在学习vertical-align及替换元素 ...

  4. 【HTML】秒懂内联元素和块级元素的区别

    内联元素和块级元素 1.内联元素(inline) (一)内联元素的概念 (二)内联元素的特性 (三)HTML标签中常见的内联元素 2.块级元素(block) (一)块级元素的概念 (二)块级元素的特性 ...

  5. html块级元素转换内联,内联元素和块级元素相互转换

    内联元素和块级元素相互转换属于前端实例代码,有关更多实例代码大家可以查看. 内联元素和块级元素之间可以相互转换,下面就简单介绍一下转换方法. 一.内联元素转换为块级元素: 让内联元素产生浮动或者将它的 ...

  6. 内连级元素有哪些_内联元素和块级元素

    一.行内元素与块级元素的基本概念 1. 块元素 (block element) : 块级元素生成一个元素框, (默认地)它会填充其父级元素的内容,旁边不 能有其他元素.换句话说,他在元素框之前和之后生 ...

  7. html 元素的内联块元素,html内联元素和块级元素的基本概念及使用示例

    html标签分为两种,内联元素和块级元素,首先我们先了解一下内联元素和块级元素的概念: 块级元素:一般是其它元素的容器,可容纳内联元素和其它块级元素,块级元素排斥其它元素与其位于同一行,可设置宽度(w ...

  8. 【HTML】行内元素与块级元素

    一.行内元素与块级元素的三个区别 1.行内元素与块级元素直观上的区别 行内元素会在一条直线上排列,都是同一行的,水平方向排列 块级元素各占据一行,垂直方向排列.块级元素从新行开始结束接着一个断行. 2 ...

  9. HTML中行内元素与块级元素的区别

    区别: 1.行内元素与块级函数可以相互转换,通过修改display属性值来切换块级元素和行内元素,行内元素display:inline,块级元素display:block. 2.行内元素和其他行内元素 ...

最新文章

  1. java list 最小值_Java 实例 – 查找 List 中的最大最小值
  2. 如何激励用户为你的app评分?
  3. php和java的memcached使用的兼容性问题解决过程
  4. 关于c/c++/obj-c的混合使用 (2010-06-22 10:05:33)
  5. java mvp开发_如何从没有软件开发技能的想法变成现实的市场MVP?️?
  6. 如何用vc6编译ffmpeg, 并单步调试。
  7. java 非静态 初始化_Java非静态代码块和实例初始化过程
  8. cdn.cdzk_页面“www.cdzkdc.com”HTTP状态检测结果- 站长工具
  9. Hibernate POJO在序列化(JSON)时遇到的若干问题
  10. 生姜红糖水怎么喝健康呢?
  11. 教程资源合集(网上搜集整理)
  12. java语言介绍及特点
  13. yolov5ds-yolov5做分割(尝试ing)
  14. 天涯共此时--中秋赏古诗
  15. 小知识 - 恢复chmod执行权限
  16. 转发(Forward)和重定向(Redirect)的区别
  17. HTML学习笔记 2
  18. Python:使用API——使用Pygal可视化仓库
  19. Windows上最良心也最强大的两款播放器—QQ影音、potplayer
  20. 基于机器学习的技术术语识别研究综述

热门文章

  1. 【bzoj1304】[CQOI2009]叶子的染色 树形dp
  2. spring boot 异常汇总
  3. Android——用Activity和Service实现简单的音乐播放器
  4. jquery动态加载JS【方法getScript】的改进
  5. linux环境中,top命令中,对command的命令进行扩展查看详情?
  6. kafka 消息服务
  7. _exit()函数与exit()函数的区别
  8. Firefox将以HTTP明文发送密码的网站标注为不安全
  9. 科技领袖技术大亨们被指是现代强盗:不仅赚钱还想垄断
  10. MYSQL安装出现could not start the service mysql error:0处理