div+css 布局常识 8问

(编辑:jimmy 日期: 2024/11/1 浏览:2)

一、超链接点击过后hover样式就不出现的问题?
被点击访问过的超链接样式不再具有hover和active样式了,解决方法是改变CSS属性的排列顺序: L-V-H-A
二、IE6的margin双倍边距bug问题
例如:

复制代码代码如下:
<style type="text/css">
body {margin:0;}
div {float:left; margin-left:10px; width:200px; height:200px; border:1px solid red;}
</style>

浮动后本来外边距10px,但IE解释为20px,解决办法是加上display:inline;

三、为什么中火狐浏览器下文本无法撑开容器的高度?
标准浏览器中固定高度值的容器是不会象IE6里那样被撑开的,那我又想固定高度,又想能被撑开需要怎样设置呢?办法就是去掉height设置min-height:200px; 这里为了照顾不认识min-height的IE6 可以这样定义:

复制代码代码如下:
div { height:auto!important; height:200px; min-height:200px; }

四、为什么web标准中无法设置IE浏览器滚动条颜色了?
原来样式设置:

复制代码代码如下:
<style type="text/css">
body { scrollbar-face-color:#f6f6f6; scrollbar-highlight-color:#fff; scrollbar-shadow-color:#eeeeee; scrollbar-3dlight-color:#eeeeee; scrollbar-arrow-color:#000; scrollbar-track-color:#fff; scrollbar-darkshadow-color:#fff; }
</style>


解决办法是将body换成html
五、如何定义1px左右高度的容器?
IE6下这个问题是因为默认的行高造成的,解决的方法也有很多,例如:overflow:hidden | zoom:0.08 | line-height:1px
六、怎么样才能让层显示在FLASH之上呢?
解决的办法是给FLASH设置透明:

复制代码代码如下:
<a href="https://www.jb51.net/">:</a>
<pre lang="html" line="1">
<param name="wmode" value="transparent" />

七、怎样使一个div层居中于浏览器中?

复制代码代码如下:
<style type="text/css">
<!--
div {
position:absolute;
top:50%;
left:50%;
margin:-100px 0 0 -100px;
width:200px;
height:200px;
border:1px solid red;
}
-->
</style>

这里使用百分比绝对定位,与外补丁负值的方法,负值的大小为其自身宽度高度除以二
八、firefox浏览器中嵌套div标签的居中问题的解决方法
假定有如下情况:

复制代码代码如下:
<div id="a">
<div id="b"> </div>
</div>

如果要实现b在a中居中放置,一般只需用CSS设置a的text-align属性为center。这样的方法在IE里看起来一切正常;但是在Firefox中b却会是居左的。
解决办法就是设置b的横向margin为auto。例如设置b的CSS样式为:margin: 0 auto;