网页元素居中问题
2016-04-23 01:08
459 查看
网页元素居中问题
居中问题,就不得不提到块级元素和行内元素。HTML 中的所有标记都分为块级元素和行内元素两种,两者的区别是行内元素标记的下一个标记是接在行内元素的后面,而块级元素的下一个标记是在块级元素的下面,就是所谓的 “标准流”,最明显的例子就是 span 标记和 div 标记网页元素居中问题
html 标签居中
CSS 居中
JS 元素居中
1. html 标签居中
center 标签是 html 的块元素,居中显示, 仅针对于 IE 浏览器,但不同版本的支持情况不一样会带来浏览器兼容问题标签的 align=”center” 属性,设置或获取表格排列。如 div,table 等标签可以快速使用。但同样也存在兼容问题
2. CSS 居中
width:auto 属性, 没有固定的宽度,width:auto;如果是固定宽度了,需要 margin:0 auto 。现在浏览器 如 IE 9+,firefox, chrome,360 等基本上都可以很好的实现。在低版本的浏览器中还存在一些问题。
img 图片居中,使用 align =”middle” 垂直居中 verticalAlign=”middle”, 会影响你的文字布局。
文字居中或者子元素居中 使用 text-aligh:center 这个属性在文字居中很实用,也是最常用的属性之一。当然有时还要结合 display=inline。
在绝对定位 position:absolute 中,居中问题稍微麻烦一点,我们可以先将左偏移设置为页面分辨率一半 left =“50%”, 然后可以将左边界(负边界)设置为容器的宽度一半 margin-left:-(width/2)如:这种方式可以很好的兼容现代,低版本的浏览器(IE6 或 IE6+)。
#container { position: absolute; left: 50%; width: 800px; margin-left: -400px; } #container { position: absolute; left: 50%; width: 800px; margin-left: -400px; }
position:relative 也同样可以采用上述方式,首先给父元素设置 float:left; position:relative; 然后将父元素的左偏移设置为: left =“50%”,在子元素设置 position:relative; left:-50%。
3. JS 元素居中
使用此种方法注意页面在 onresize 时事件处理和 js 的浏览器兼容问题,建议使用 jquery 等 js 库.var divWidth = obj.offsetWidth; var divHeight = obj.offsetHeight; var divLeft = parseInt((screenWidth - divWidth) / 2); var divTop = parseInt((screenHeight - divHeight) / 2); var divWidth = obj.offsetWidth; var divHeight = obj.offsetHeight; var divLeft = parseInt((screenWidth - divWidth) / 2); var divTop = parseInt((screenHeight - divHeight) / 2); ... javascript'''
//div水平垂直居中 #父容器{ height:100%; width:100%; margin:0; padding:0; border:0; } div{ position:relative; margin:auto; height:500px; width:500px; top:50%; margin-top:-250px; } ... css'''
1
在实际项目练习中遇到居中问题, 经查询解决该问题, 特记录. ↩
相关文章推荐
- Web布局连载——两栏固定布局(五)
- [div+css]晒晒最新制作专题推广页模板
- 在Windows 8.1的IE 11中屏蔽双击放大功能
- 盒子模型
- CSS选择器
- CSS样式优先权
- HTML5调用摄像头实例
- [css] line-height 百分比单位和数值单位的区别
- Apple官网研究之使用Justify布局导航
- 关于前端的思考与感悟
- 设计更快的网页(三):字体和 CSS 调整
- 纯CSS制作的新闻网站中的文章列表
- 10条影响CSS渲染速度的写法与使用建议第1/3页
- 通过Mootools 1.2来操纵HTML DOM元素
- BS项目中的CSS架构_仅加载自己需要的CSS
- 很不错的 CSS Hack 又学了一招