当被设置元素为块状元素时用text-align:center就不起作用了,这也分两种情况,定宽块状元素和不定宽块状元素。

一.定宽块状元素:快状元素的宽度width为固定值,之后我们可以将左右margin值设置为auto来实线居中。

<html>
<head>
<style>
div{
margin-left:auto;
margin-right:auto;
width:200px;
border:2px red solid;
}
</style>
</head>
<body>
<div>123</div>
</body>
<html>

这种方法必须要有width和margin值为auto才能成功。

二.

不定宽块状元素方法(一):

加入table标签,这种方法是利用table标签的长度自适应性,即不定义其长度也不默认父元素body的长度,因此可以看做一个定宽度元素,然后在利用定宽度块状居中的margin的方法,使其居中。

第一步:为需要设置的居中的元素外面加入一个table标签。

第二步:为这个table设置左右margin居中。

<html>
<head>
<style>
table{
border:1px solid;
margin:0 auto;
}
</style>
</head>
<body>
<div>
<table>
<tbody>
<tr>
<td>123</td>
</tr>
<tr>
<td>123</td>
</tr>
<tr>
<td>123</td>
</tr>
</tbody>
</table>
</body>
</html>

不定宽块状元素方法(二):

出来上面讲到的插入table标签,可以使不定宽快船个元素水平居中之外,本节介绍的方法,改变元素的display类型为行内元素,利用其属性直接设置。

第二种方法:改变块级元素的display为inline类型,然后使用text-align:center实线居中效果,如下:

<html>
<head>
<style>
div{
text-align:center;
}
ul{
display:inline;
}
li{
display:inline;
}
</style>
</head>
<body>
<div>
<ul>
<li>123</li>
<li>123</li>
</ul>
</div>
</body>
</html>

不定宽块状元素方法(三)

出来前两节讲到的插入table标签,以及改变元素的display类型,第三种实现的方法,设置浮动和相对定位来实线。

通过给父元素设置float,然后给父元素设置position:relative和left:-50%来实线水平居中。

我们可以这样理解:假象ul层的父层(div层)平均分为两份,ul层的css代码是将ul层的父层(div层)的平分线对其;而li层的css代码则是将li层的最左端(也是div层的平分线)对齐,从而实线li层的居中。

<body>
<div class="container">
<ul>
<li><123/li>
</ul>
</div>
</body>
<style>
.container{
float:left;
position:relative;
left:50;
}
.container ul{
list-style:none;
margin:0;
padding:0;
position:relative;
left:-50%;
}
.container li{
float:left;display:inline;margin-right:8px;}
</style>

  

css各项水平居中的更多相关文章

  1. css如何实现水平居中呢?css实现水平居中的方法?

    面试中遇到的一个问题:如何让css实现水平居中?下面来看一下哪些方法能实现水平居中. 首先分两种情况,行内元素还是块级元素.然而块级元素又分为定宽块状元素和不定款块状元素.先来看下行内元素如何水平居中 ...

  2. CSS的水平居中和垂直居中解决方案

    在写CSS样式的时候,有时为了美观,会添加水平居中和垂直居中,这时候你有可能会遇到很棘手的问题,有些水平居中和垂直居中的属性添加上去完全没反应,下面给大家列举一些CSS水平居中和垂直居中的终极解决方案 ...

  3. CSS垂直水平居中方法总结

    在布局的时候经常能用到居中,在此总结一下 html结构: <div class="wrap"> <div class="content"> ...

  4. CSS垂直水平居中方法整理

    CSS定位中常常用到垂直居中,比如覆盖层上的弹框. 兼容性比较好的方法: <!DOCTYPE html PUBliC "-//W3C//DTD XHTML 1.0 Transition ...

  5. css布局--水平居中

    一.水平居中 1. 使用text-align和display:inline-block实现水平居中 html <div class="parent"> <div ...

  6. CSS中水平居中的方法

    居中是我们在css中经常遇到的问题,一般有水平居中.垂直居中.垂直水平居中这3种情况,那么今天首先就来对学习到的水平居中的方法做个总结笔记. css水平居中 text-align:center 它的效 ...

  7. css的水平居中和垂直居中总结

    Html代码: <div class="md-warp"> <div class="md-main">块级元素</div> ...

  8. CSS:水平居中与垂直居中

    CSS居中算是一个比较基础的问题,在实际运用中,需要考虑到的一般是两种情况,一种是主要是表现为文字,图片等行内元素的居中,一种是指 div 等块级标签元素的居中. 水平居中 1.行内元素 行内元素(主 ...

  9. 主流 CSS 布局(水平居中、垂直居中、居中 )

    什么是布局 html 页面的整体结构或骨架 布局不是某个技术内容 而是一种设计思想 [ 布局方式 ] 水平居中布局 垂直居中布局 居中布局( 水平 + 垂直 ) 什么是水平居中布局 水平居中布局 元素 ...

随机推荐

  1. Android 开发环境配置

    转至:http://www.cnblogs.com/shangdahao/archive/2013/04/17/3025429.html Windows下的开发环境需要安装以下软件: Java JDK ...

  2. 测试webAPP时图标背景一片黑色

    写了个web小程序,打包成APP后安装到手机里,在魅族手机里显示是正常的,但是在EMUI和MIUI中却显示一片黑色,搞了半天才发现原来是因为EMUI会自动给应用的图标裁剪圆角并加上背景色,背景色是系统 ...

  3. sql 将8位字符串转换成日期型

    将8位字符串转换成日期型,方法如下: ),)

  4. JavaScript基础知识整理(1)

    粗略理解,努力入门中 1.在html中引入外部脚本:  <script src="filename.js"></script> 2.注释:  多于一行的长注 ...

  5. 20151208Study

    20151208-----------------------------------------------------* Her main interest now is raising her ...

  6. C/C++中extern关键字解析

    1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义.此外extern也可用来进行链接指定. 也就是说extern ...

  7. 引入Ember插件 大概流程

    引入Ember插件 xxx (转自美女同事 LZX) 1.ember install xxx(过程中可能会提示你安装其他包 按照提示语安装就行)   2.安装之后会看到 工作目录里已经出现了下载好的安 ...

  8. HTML5之语义标签

    在HTML5标准中,新加了几个用于增添页面语义的标签,这些标签有:article.section.nav和aside等.与别的大多数标签不 同,浏览器在解释渲染这些标签的时候仅仅把它作为普通的div块 ...

  9. 【java】:多表关联、排序

    SELECT * FROM (SELECT coll.collection_id, coll.report_id, coll.new_id, news.title,news.abstract_txt, ...

  10. ServletContext获取的方法

    ServletContext  代表当前web应用 如何获取ServletContext对象 ServletConfig对象中维护了ServletContext对象的引用,可以通过以下方式获得 Ser ...