好程序员web前端分享CSS元素类型

目标

  • 1、元素类型分类依据和元素类型分类
  • 2、元素类型的转换
  • 3、inline-block元素类型的应用
  • 4、置换和非置换元素的概念和应用案例

一、元素类型分类依据和元素类型分类

根据css显示分类,XHTML元素被分为
三种类型:块状元素,内联元素
1.块状元素(block element)

A)块状元素在网页中就是以块的形式显示,所谓块状就是元素显示为矩形区域,常用的块状元素包块div,dl,dt,dd,ol,ul,li,(h1-h6),p,form,hr,table,tr,td,等;

B)默认情况下,块状元素都会占据一行,通俗地说,两个相邻块状元素不会出现并列显示的现象;默认情况下,块状元素会按顺序自上而下排列。

C)块状元素都可以定义自己的宽度和高度。

D)块状元素一般都作为其他元素的容器,它可以容纳其它内联元素和其它块状元素。我们可以把这种容器比喻为一个盒子

注:p标签是一个块元素,但它只能作为内联元素(inline element)的容器;

2.内联元素(inline element)(或是行内元素)

A) 常见的内联元素如:a,span,i,em,strong,b,u,del,s,input,img,br,sub,sup等
B) 内联元素的表现形式是始终以行内逐个进行显示;
C) 内联元素没有自己的形状,不能定义它的宽和高,它显示的宽度、高度只能根据所包含内容的高度和宽度来确定,它的最小内容单元也会呈现矩形形状;
D)内联元素也会遵循盒模型基本规则,如可以定义padding,border,margin,background等属性,padding,border,margin上下的值没有实际功能;

二、元素类型的转换

元素可通过display属性来改变元素的默认显示类型

1)display属性与属性值 (18个属性值)

属性值:block/inline/inline-block(img,input)/none/list-item(li)/table-row/table(table)/table-cell(td)/table-header-group(thead)/table-footer-group(tfoot);

作用:块状元素和内联元素之间的转换。
说明:各属性值的作用

1)Block块状显示:类似在元素后面添加换行符,也就是说其他元素不能在其后面并列显示。或者就是让元素竖排显示。
2)inline内联显示:在元素后面删除换行符,多个元素可以在一行内并列显示。或者就是让元素横排显示。

3)Inline-block行内块状显示:元素的内容以块状显示,行内的其他元素显示在同一行。
(此元素类型支持vertical-align属性)img,input
4)none:隐藏元素, 此元素不会被显示。
5)list-item:将元素转换成列表。li的默认类型。

6)当元素设置了float属性后,就相当于该元素加了display:block;

注:A、大部分块元素display属性值默认为block,其中li列表的默认值为list-item。

B、大部分内联元素的display属性值默认为inline,其中img,input,默认为inline-block。

三、inline-block元素类型的应用

Inline-block行内块元素显示:元素的内容以块状显示,行内的其他元素显示在同一行。
(此元素类型可以支持vertical-align属性)img,input
垂直对齐方式{vertical-align:top(元素的顶端与行中最高的元素顶端对齐)/bottom元素的底端与行中最低的元素底端对齐/middle/sub(与父元素的下标字体基线对齐)/super(与父元素的上标字体基线对齐)/text-top(与父元素的字体顶端对齐)/text-bottom(与父元素的字体底端对齐);}

四置换和非置换元素的概念

拓展:

置换元素/替换元素 概念:一个内容不受CSS视觉格式化模型控制,CSS渲染模型并不考虑对此内容的渲染,且元素本身一般拥有固有尺寸(宽度,高度,宽高比)的元素,这些元素往往没有实际的内容,即是一个空元素,置换元素就是浏览器根据元素的属性和属性值,来决定元素的具体显示内容。大部分的置换元素的元素类型为inline-block;被称之为置换元素。HTML中的img、input都是置换元素。 例如浏览器会根据img标签的src属性的值来读取图片信息并显示出来。 又例如根据input标签的type属性来决定是显示输入框,还是单选按钮等。 非置换元素/不可置换元素 :HTML中除了可替换元素外,其它都是不可替换元素(即其内容直接表现给用户端例如浏览器)

好程序员web前端分享CSS元素类型的更多相关文章

  1. 好程序员web前端分享css常用属性缩写

    好程序员web前端分享css常用属性缩写,使用缩写可以帮助减少你CSS文件的大小,更加容易阅读.css缩写的主要规则如下: 颜色 16进制的色彩值,如果每两位的值相同,可以缩写一半,例如: #0000 ...

  2. 好程序员web前端分享CSS基础篇

    学习目标 1.CSS简介 2.CSS语法 3.样式的创建 4.两种引入外部样式表的区别 5.样式表的优先级和作用域 6.CSS选择器 7.选择器的权重 8.浮动属性的简单应用 9.HTML.CSS注释 ...

  3. 好程序员web前端分享12个CSS高级技巧汇总

    好程序员web前端分享下面这些CSS高级技巧,一般人我可不告诉他哦. 使用 :not() 在菜单上应用/取消应用边框 给body添加行高 所有一切都垂直居中 逗号分隔的列表 使用负的 nth-chil ...

  4. 好程序员web前端分享18个用CSS制作出来的东西

    好程序员web前端分享18个用CSS制作出来的东西,与流行的看法相反,CSS不仅仅是用来提供一个WEB页面的基本风格,以使它看起来更有吸引力.还有很多其他的事情,CSS也可以做的很好.由于它创建动画和 ...

  5. 好程序员web前端分享值得参考的css理论:OOCSS、SMACSS与BEM

    好程序员web前端分享值得参考的css理论:OOCSS.SMACSS与BEM 最近在The Sass Way里看到了Modular CSS typography一文,发现文章在开头部分就提到了OOCS ...

  6. 好程序员web前端分享HTML基础篇

    好程序员web前端分享HTML基础篇,最近遇到很多新手,都会问,如果要学web前端开发,需要学什么?难不难学啊?多久能入门之类的问题?那么今天好程序员就先来给大家分享一下web前端学习路线:HTML基 ...

  7. 好程序员web前端分享想要学习前端需要学那些课程

    好程序员web前端分享想要学习前端需要学那些课程,仔细思考了一下如何回答好这个话题,其实前端是一个涵盖面非常之广泛的一个职位,所需知识体系非常庞杂,与传统语言“想要精一行,必先通一门” 有很大差别, ...

  8. 好程序员web前端分享javascript关联数组用法总结

    好程序员web前端分享javascript关联数组用法总结,有需要的朋友可以参考下. Hash关联数组定义 代码如下 // 定义空数组 myhash = { } // 直接定义数组 myhash = ...

  9. 好程序员web前端分享如何理解JS的单线程

    好程序员web前端分享如何理解JS单线程,JS本质是单线程的.也就是说,它并不能像JAVA语言那样,两个线程并发执行. 但我们平时看到的JS,分明是可以同时运作很多任务的,这又是怎么回事呢? 首先,J ...

随机推荐

  1. CentOS6.5上安装Python2.7和PIP

    目前大部分用户使用的CentOS6.5上默认的Python还是2.6版本.升级到Python2.7碰到很多问题.本文将介绍如何安装Python2.7. 1. 安装必要的准备包 安装过程将用到gcc,方 ...

  2. [转载]Ubuntu下ssh服务的安装与登陆(ssh远程登陆)

    转载地址:http://blog.csdn.net/zht666/article/details/9340633 Ubuntu默认并没有安装ssh服务,如果通过ssh远程连接到Ubuntu,需要自己手 ...

  3. python selenium 滚动条处理、页面拖动

    selenium中没有直接控制滚动条的方法,可以使用方法:execute_script(),可以直接执行js的脚本. 一.竖向滚动条控制,三种方法总有一款适合你. 1.滚动条拉到最底: js=&quo ...

  4. HTTP请求常见错误大全

    常见的Http请求错误提示 1xx - 信息提示这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应.100 - 继续101 - 切换协议 2xx - 成功这类状态 ...

  5. _tprintf(), printf(),wprintf() 与控制字符 %s 和 %S(Unicoe与GB2312))

    _tprintf() 是 printf() 和 wprintf() 的通用类型:如果定义了 _unicode,那么 _tprintf() 就会转换为 wprintf(),否则为 printf() . ...

  6. 部署和调优 3.3 dns安装配置-3

    只有一台DNS服务器是不保险的,现在给他配置个从服务器. 在另外一台虚拟机上安装配置DNS服务器.先查看虚拟机ip为:192.168.1.111 ifconfig 给从安装bind和dig命令 yum ...

  7. 关于使用字库-雅黑字体(msyh.ttf )显示中文的一些。。。

    开发中有关程序在使用字库 雅黑字体的 的时候 vs下一开始没有显示出中文来,都是乱码. 在android下使用该字体库的时候同样也没有显示出中文,后来搜搜了原因,得知编码必须是UTF-8 也就是使用字 ...

  8. tomcat使用manager管理app时需要身份验证问题

    我们可以通过图形用户界面来管理tomcat,启动tomcat,在地址栏中输入: Java代码 http://localhost:8080 就可以看见tomcat的欢迎页面,点击左边的tomcat ma ...

  9. 使用Aspectj 的配置文件方式进行aop操作

  10. requestLayout, invalidate和postInvalidate的异同

    requestLayout 当一个VIEW的布局属性发生了变化的时候,可以调用该方法,让父VIEW调用onmeasure 和onlayout重新定位该view的位置,需要在UI线程调用 invalid ...