css 非表格垂直对齐效果代码
点评:非表格,一般就是指Div了。在表格中垂直居中很简单,非表格呢,可以用两种方法。 第一:相对定位和绝对定位
以下是一固定宽高的Div的垂直居中代码
div{
position:absolute;
top:50%; left:50%;
width:400px; height:400px;
margin:-200px 0 0 -200px;
border:1px solid #000000;
}
position:absolute,绝对定位,可以把这个div看成漂浮于这个页面之上,通过top:50%和left:50%定位这个div的位置,但这个时候,垂直与水平居中的是这个div左上角这一点。所以,要让这个div的中心点位于整个页面的中间,需要使用负边界,负的上边界,负值是高度的一半;负的左边界,负值是宽度的一半。即达到效果。
如果是不定宽高的Div,则需要再多嵌套两个Div,需要对CSS的定位概念仔细理解。
第二:不同的DISPLAY方式
Div不是表格,但是当代的浏览器中除了IE都支持display:table-cell。恰好,IE支持dispaly:inline-block,那么我们就用两种方式为当代浏览器实现非表格的垂直居中,殊途同归。
HTML如下:
复制代码代码如下:
<div id="div1">blah blah...看见我居中了吗?</div>
<div id="div2">
<p>blah blah...</p>
....
</div>
CSS如下:
#div1, #div2 {display:table-cell; *display: inline; zoom:1; vertical-align:middle;}
我们来重点分析CSS。如您所知,*property是一个只有IE(包括IE7)才能解析的hack. 那么为何是inline而不是inline-block呢?这跟IE的变态工作方式有关,具体不深究。在此你只需知道加上zoom:1后,就等价于inline-block。另外,如果是a, span等非block的元素,则按正常方式display:inline-block。
相关文档:
图片自动适应大小的问题在平时制作的时候是比较常见的问题,下面提供一个比较简单的解决方法:
div img {
max-width:600px;
//IE7、FF等其他非IE浏览器下最大宽度为600px;
width:600px;
//所有浏览器中图片的大小为600px;
width:expression(document.body.clientWidth>600?"600px":"auto");
//当图片大小大于6 ......
想修改一下子自己的CSS,因为博客标题正好把网页图片上的文字正好档了一部分,看起来很不爽。最后确实是由“margin命令”来控制的,于是上网学习了一下子这个的用法。margin在中文中我们翻译成外边距或者外补白(本文中引用外边距)。他是元素盒模型(box model)的基础属性。
一、margin的基本特性
margin属 ......
CSS代码如下:
img { /*-- 专门用于限定文章DIV下的图片 --*/
max-width: 680px;
max-height: 700px;
}
*html img { /*兼容IE6*/
width: expression(this.width > 700 && this.width > this.height ? 680 : tr ......
例子:<span style="cursor:*">文本或其它页面元素</span> <a href="#" style="cursor:*">文本或其它页面元素</a> 注意把 * 换成如下15个效果的一种:
下面是对这15种效果的解释。移动鼠标到解释上面,看看你的鼠标起了什么变化吧!
hand是手型
例子:CSS鼠标手型效果 <a ......
可以放置样式的地方:样式表,<style>和style
样式表是一个独立的文件,可以通过<link>元素或者css的@import语句把它附加到某个html文档中,<style>是一个html元素,可以把它内嵌在html文档中,style是一个属性,可以内置在任何html元素中。
要想把样式表连到html文档中,要在html文档中的<head> ......