1.超链接访问过后hover样式就不出现的问题
被点击访问过的超链接样式不在具有hover和active了,很多人应该都遇到过这个问 题,解决方法是改变CSS属性的排列顺序: L-V-H-A
2.FF下如何使连续长字段自动换行
众所周知IE中直接使用 word-wrap:break-word 就可以了, 这里FF中我们使用JS插入 的方法来解决
<script>
function toBreakWord(intLen){
var obj=document.getElementById("ff");
var strContent=obj.innerHTML;
var strTemp="";
while(strContent.length>intLen){
strTemp+=strContent.substr(0,intLen)+" ";
strContent=strContent.substr(intLen,strContent.length);
}
strTemp+=" "+strContent;
obj.innerHTML=strTemp;
}
if(document.getElementById && !document.all) toBreakWord(37)
</script>
3.ff下为什么父容器的高度不能自适应
为什么这个P撑不开DIV呢?解决的办法是在div 与 p 之间插入<div style=”clear:both”></div>清除掉这个p的浮动.
4. IE6的双倍边距BUG
浮动后本来外边距10px,但IE解释为20px,解决办法是加上 display:inline
5. IE6下为什么图片下方有空隙产生
解决这个BUG的方法也有很多,可以是改变html的排版,或者定义img 为display:block
或者定义vertical-align属性值为vertical-align:top | bottom |middle |text-bottom
还可以设置父容器的字体大小为零,font-size:0
6. IE6下这两个层中间怎么有间隙
这个IE的3PX BUG也是经常出现的,解决的办法是给.right也同样浮动 float:left 或者相对IE6定义.left margin-right:-3px;
7. list-style-image无法准确定位的问题
这个list-style-image的定位问题也是经常有人问的,解决的办法一般是用 li的背景模拟, 这里采用相对 定位的方法也可以解决
8. LI中内容超过长度后以省略号显示的方法
li {
width:200px;
white-space:nowrap;
text-overflow:ellipsis;
-o-text-overflow:ellipsis;
overflow: hidden;
}
此方法适用与IE与OP浏览器
9.web标准中定义id与class有什么区别吗
一.web标准中是不容许重复ID的,比如 div 一个页面中不容许重复2次,而class 定义的是类,理论上可以无限重复的,
这样需要多次引用的定义便可以使用他.class还可以同时引用多个类,不同的类之间用空 格隔开.
二.属性的优先级问题,ID 的优先级要高于class,看上面的例子
三.方便JS等客户端脚本,如果在页面中要对某个对象进行脚本操作,那么可以给他定义一个 ID,否则只能利用遍历页面元素加上指定特定属性来找到它,这是相对
浪费时间资源,远远不如一个ID来得简单.
10.如何垂直居中文本
给容器设置一个与其高度相同的行高就可以了
11.如何对齐文本与文本输入筐
遇到此种问题,设置文本框的 vertical-align:middle 就可以了
12.为什么FF下文本无法撑开容器的高度
标准浏览器中固定高度值的容器是不会象IE6里那样被撑开的,那我又想固定高度,又想能被 撑开需要怎样设置呢?办法
就是去掉height设置min-height:200px; 这里为了照顾不认识 min-height的IE6 可以这样定义:
{
height:auto!important;
height:200px;
min-height:200px;
}
13.为什么web标准中IE无法设置滚动条颜色了
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;
}
解决办法是将body换成html
14.为什么无法定义1px左右高度的容器
IE6下这个问题是因为默认的行高造成的,解决的方法也有很多,例 如:overflow:hidden | zoom:0.08 | line-height:1px
15.怎么样才能让层显示在FLASH之上呢
解决的办法是给FLASH设置透明<param value="transparent" />或者<param value="opaque" />
16.怎样使一个层垂直居中于浏览器中
这里我们使用百分比绝对定位,与外补丁负值的方法,负值的大小为其自身宽度高度除以二
17.通用的加入收藏夹代码
<script>
// <![CDATA[
function bookmark(){
var title=document.title
var url=document.location.href
if (window.sidebar) window.sidebar.addPanel(title, url,"");
else if( window.opera && window.print ){
var mbm = document.createElement('a');
mbm.setAttribute('rel','sidebar');
mbm.setAttribute('href',url);
mbm.setAttribute('title',title);
mbm.click();}
else if( document.all ) window.external.AddFavorite( url, title);
}
// ]]>
</script>
<a href="javascript:bookmark()">加入收藏夹</a>
上面的例子可以很好的解决这个问题,在IE6-7. FF2.0 OP9.0中测试通过
18.IE6使用滤镜使PNG图片透明后,容器内链接失效的问题
div {
width:401px;
height:223px;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale', src='/uploads/allimg/100305/0K9325b9-0.png')
}
解决方法是为链接定义一个相对定位属性。position:relative