行内元素和块级元素水平及垂直居中

 首先,介绍一下行内元素和块级元素,这个很重要,因为有的属性只能用于块元素,而有的正好相反,在一定的情况下,它们也可以相互转换,比如用display来进行设置。

行内元素:

①不占据一整行,随内容而定,有以下特点:

②不可以设置宽高,也不可以设置行高,其宽度随着内容增加,高度随字体大小而改变。

③内联元素可以设置外边界,但是外边界不对上下起作用,只能对左右起作用。

④也可以设置内边界,但是内边界在ie6中不对上下起作用,只能对左右起作用。

    常用的内联元素有:

a - 锚点,b - 粗体(不推荐),br - 换行,em - 强调,font - 字体设定(不推荐),i - 斜体,img - 图片,input - 输入框,label - 表格标签,select - 项目选择,small - 小字体文本,span - 常用内联容器,定义文本内区块,strike - 中划线,strong - 粗体强调

 

块级元素block element:

①总是在新行上开始,占据一整行;

②高度,行高以及外边距和内边距都可控制;

③宽带始终是与浏览器宽度一样,与内容无关;

④它可以容纳内联元素和其他块元素。

    常用的块级元素有:

div -最常用的块级元素,dl - 和dt dd搭配使用的块级元素,form - 交互表单,h1 - 大标题,hr - 水平分隔线,ol - 排序表单,p - 段落,ul - 非排序列表

互相转换:使用display设置可以使得行内元素拥有块级元素的特性,反之也可以。

如:

我是被设置了内联的块元素p,我现在的表现形式和内联元素一样啦

我是被设置了块级元素的span,我现在可以独占一行并且可以设置宽高

display: table-cell ,能把元素当作表格单元来显示,这个非常实用,显示效果也很好,只可惜某些浏览器不够兼容。要注意,和一个合法的元素必须在

里一样,

display: table-cell 元素必须作为 display: table 的元素的子元素出现。

CSS设置行内元素的水平居中

  1. div{text-align:center} /*DIV内的行内元素均会水平居中*/ 

 

CSS设置行内元素的垂直居中

  1. div{height:30px; line-height:30px} /*DIV内的行内元素均会垂直居中*/ 

 

PS:当然,如果既要水平居中又要垂直居中,那么综合一下

  1. div{text-align:center; height:30px; line-height:30px} 

 

CSS设置块级元素的水平居中

  1. div p{margin:auto; width:500px} /*块级元素p一定要设置宽度,
  2. 才能相当于DIV父容器水平居中*/ 

 

CSS设置块级元素的垂直居中

  1. div{width:500px} /*DIV父容器设置宽度*/ 
  2. div p{margin:0 aut0; height:30px; line-height:30px} /*块级元素p也可以加个宽度,
  3. 以达到相对于DIV父容器的水平居中效果*/ 

转载于:https://www.cnblogs.com/wang365366/p/7469871.html

你可能感兴趣的:(行内元素和块级元素水平及垂直居中)