HTMl元素根据表现形式,常见的可以分为两类。

(1)块元素(block)

(2)行内元素(inline)。

当然,除了以上两种元素类型外,还有inline-block、table-cell等元素类型。

1:块元素

块元素在浏览器默认状态下将占据整行,排斥其他元素与其位于同一行。块元素一般为矩形,可以容纳行元素和其他的块元素。

常见的块元素有:div(div层)  h1~h6(1到6级标题) p(段落,会自动在其前后创建一些空白) hr(分割线) ol(有序列表) ul(无序列表)

块元素具有如下特点:

(1)独占一行,排斥其他元素跟其位于同一行,包括块元素和行内元素。

(2)块元素内部可以容纳其他块元素或行元素。

(3)可以定义高度(height),也可以定义宽度(width。

(4)可以定义四个方向的margin属性。

2:行内元素

行内元素默认显示状态可以与其他行内元素共存在同一行。

常见的行内元素有:strong(加粗强调) em(斜体强调) s(删除线) u(下划线) a(超链接) span(常用行级,可定义文档中的行内元素)

行内元素具有以下特点:

(1)可以与其他行内元素位于同一行。

(2)行内内部可以容纳其他行内元素,但不可以容纳块元素,不然会出现无法预知的效果。

(3)无法定义高度(height),也无法定义宽度(width)。

(4)可以定义margin-left和margin-right,无法定义margin-top和margin-bottom。

3:Display简介

如果想要将元素从一个类型转换为另外一个类型,就需要display属性。

其语法:display:属性值;

display属性取值:

inline      行内元素

block      块元素

inline-block     行内块元素

table      以表格形式显示,类似于table元素

table-row    以表格行形式显示,类似于tr元素

table-cell    以表格单元格形式显示,类似于td元素

none       隐藏元素

在CSS中,可以使用display:inline-block来将元素转换为行内块元素。行内块元素有以下两个特点。

(1)可以定义width和height。

(2)可以与其他行内元素位于同一行。

inline-block元素既具备块元素的特点,也具备行内元素的特点,在HTMl中,常见的inline-block元素有两个:img元素和input元素。

display:none

在CSS中我们可以使用display:none来隐藏元素。一般情况下,配合JavaScript来动态隐藏元素。

对于display:none需要注意以下:

(1)display:none一般用于JavaScript动态隐藏元素,被隐藏的元素不占据原来的位置空间。

(2)display:none不推荐用来隐藏一些对SEO关键的部分。对于搜索引擎来说,它会直接忽略diaplay:none隐藏的内容,不会把display:none隐藏的内容加入权重考虑。

display:none和visibility:hidden的区别

在CSS中,如果想要隐藏某一个元素,我们可以使用display:none或者visibility:hidden来实现,其二者有本质的区别。

(1)display:none的元素被隐藏之后,不占据原来的位置,也就是说彻底消失了,看不见也摸不着。

(2)visibility:hidden的元素被隐藏之后,依然占据原来的位置,也就是说并没有彻底消失,看不见但摸得着。

display:table-cell

在CSS中,display:table-cell可以让元素以表格单元格的形式呈现,也就是说table-cell类型的元素具备td元素的特点。

display:table-cell非常强大,可以实现以下三种功能。

(1)图片垂直居中于元素。

(2)等高布局。

(3)自动平均划分元素,并且在一行显示。

【1】图片垂直居中于元素

在CSS中,可以使用display:table-cell和vertical-align:center来实现大小不固定的图片的垂直居中效果。

语法:

父元素

{

display:table-cell;

vertical-align:center;

}

子元素{vertical-align:center;}

【2】自动平均划分元素

语法:

父元素{display:table};

子元素{display:table-cell;}

当父元素定义display-table而子元素定义display:table-cell时,如果给父元素一定的高度,父元素宽度就会根据子元素的个数进行自动平均划分。

去除inline-block元素间距

在CSS中,使用font-size:0来去除inline:block元素的间距。

语法:

父元素{font-size:0;}

说明:font-size:0是在inline-block元素的父元素添加的。

也可使用font-size:0来去除图片之间的间距。

Display属性学习总结的更多相关文章

  1. CSS display属性学习

    ---恢复内容开始--- http://www.w3school.com.cn/cssref/pr_class_display.asp 所有主流浏览器都支持 display 属性,如IE,Firefo ...

  2. 对CSS进行wxss思路学习,display属性。

    先来概要一下学习思路: 本系列内容,将针对微信小程序中的WXSS学习,所以在学习CSS时每一个知识点都在小程序IDE中进行实践,达到最好的学习效果. 由于wxss与CSS有些许不同,在学习CSS过程中 ...

  3. (十二)学习CSS之display属性

    参考:http://www.w3school.com.cn/cssref/pr_class_display.asp 浏览器支持 所有主流浏览器都支持 display 属性. 注释:如果规定了 !DOC ...

  4. CSS学习笔记05 display属性

    HTML标记一般分为块标记和行内标记两种类型,它们也称块元素和行内元素. 块元素 每个块元素通常都会独自占据一整行或多整行,可以对其设置宽度.高度.对齐等属性,常用于网页布局和网页结构的搭建.并且块级 ...

  5. CSS学习笔记:display属性

    目录 一.display属性概述 1. 块级元素和行内元素的区别 2.常见的块级元素和行内元素 3. display属性常见的属性值 二.测试display取各属性值的效果 1. 测试inline和b ...

  6. 深入理解display属性

    display 属性在网页布局中很常见,但是之前一直不了解他的各个属性的区别,只是简单的使用block.none属性,对于其他属性都不清楚,今天详细的学习和实践display属性的各个方面 定义 di ...

  7. 转: 详解css中的display属性

    在一般的CSS布局制作时候,我们常常会用到display对应值有block.none.inline这三个值.下面我们来分别来认识和学习什么时候用什么值.这里通过CSS display知识加实例讲解方法 ...

  8. !!!css如何让img图片居中?css的display属性实现图片居中(代码实例)

    在我们开发前端页面的时候,为了让页面效果美观,会让图片呈现居中效果.那么css怎么让img图片居中显示呢?本篇文章给大家带来css如何让img图片居中?css的display属性实现图片居中(代码实例 ...

  9. 浅谈CSS3中display属性的Flex布局

    浅谈CSS3中display属性的Flex布局   最近在学习微信小程序,在设计首页布局的时候,新认识了一种布局方式display:flex 1 .container { 2 display: fle ...

随机推荐

  1. 关于if-else代码的优化

    if-else分支代码在我们日常开发中基本上是最常用的逻辑,但是,经常在if-else代码过多的情况下,代码会变得特别臃肿,并且代码的可扩展性会变得不好,所以,优化if-else代码逻辑是很有必要的. ...

  2. Mono for android 访问Webservice和WebApi以及获取和解析JSON

    先看效果,注意:(1)这里由于我的模拟器不支持中文输入,所以,对于这张效果图,我是直接在代码中写死了我的查询城市,在下面的代码中我是没有把要查询的城市写死的. (2)读者要想成功使用本示例的所有代码的 ...

  3. 一次mongo查询不存在字段引发的事故

    话说今天的一个小小的查询失误给了我比较深刻的教训,也让我对mongo有了更深刻的理解,下面我们来说说这个事情的原委: 我们经常使用阿里云子账号在DMS上查询线上数据库数据,今天也是平常的一次操作 集合 ...

  4. .NET Core 中的日志与分布式链路追踪

    目录 .NET Core 中的日志与分布式链路追踪 .NET Core 中的日志 控制台输出 非侵入式日志 Microsoft.Extensions.Logging ILoggerFactory IL ...

  5. String -- 从源码剖析String类

    几乎所有的 Java 面试都是以 String 开始的,String 源码属于所有源码中最基础.最简单的一个,对 String 源码的理解也反应了你的 Java 基础功底. String 是如何实现的 ...

  6. 【环境搭建】SSM 整合使用

    SSM 整合使用 文章源码 搭建整合环境 整合说明 SSM 整合可以使用多种方式,但是选择 XML + 注解 的方式最为合适. 整合思路 搭建整合环境 Spring 环境搭建并测试 Spring 整合 ...

  7. Haproxy-1.8.20 编译安装:

    1 ) haproxy-1.8.20 : # 1.1 ) 安装Haproxy的依赖关系: yum install gcc gcc-c++ glibc glibc-devel pcre pcre-dev ...

  8. 使用Jenkins+Pipline 持构建自动化部署之安卓源码打包、测试、邮件通知

    一.引言 Jenkins 2.x的精髓是Pipeline as Code,那为什么要用Pipeline呢?jenkins1.0也能实现自动化构建,但Pipeline能够将以前project中的配置信息 ...

  9. 【Linux】linux的所有文件分类解析

    今天看书的时候,无意间看到/dev/文件夹,以前没注意,今天去看了下发现,很多文件的开头文件属性都是一些不怎么见到的 常见的是   -     这个是代表文件,可以vim编辑的 d     这个是代表 ...

  10. File Inclusion - Pikachu

    概述: 文件包含,是一个功能.在各种开发语言中都提供了内置的文件包含函数,其可以使开发人员在一个代码文件中直接包含(引入)另外一个代码文件. 比如 在PHP中,提供了: include(),inclu ...