布罗特的Blog

Category Archives for 前端开发

IE里的图片间距

网站底部有个广告图片区域,用的是li排列,里面插入的img标签,CSS里设置了ul,li,img的高度都统一,在firefox里很完美,图片紧贴着外边框。但是在IE里图片的下边很明显可以看到几px的间距,造成了高度增加,这样左右底部就不对齐了,影响美观。搜索了一下,发现了在li标签里加img的问题,进而找到蓝色理想的一篇帖子:IE图片下空隙问题解决方法集合,知道了几种解决方法.
1.设置img的display为block
2.设置img的vertical-align为top
3.设置img父容器的font-size为0
4.设置img 的margin-bottom为负值,同时针对FF设置margin-bottom为0

Script Rule

慢慢积累日常写代码时的错误。1.定义数组要写Array,array是错的。2.length写成lenth。3.getElementsByTagName里Elements多了一个s,跟getElementById不同。4.script在头部调用和直接把代码复制到网页里效果不同。

Line-height/Replaced Element Bug

发现在有图片,文字,文本框在同一行里,很难控制对齐。搜索到这篇文章中文的简单说明找到这里,但是按照里面的方法没有解决问题。不知道为什么。有时间再研究一下。

IE Comment Bug

实际工作中碰到问题,通过论坛和搜索解决了,值得记一记。今天收到测试员的邮件,错误截图是IE6里的,在某处搜索结果的10/100出现了2个100,第2个100跑到第2行。在IE7和FF里都是正确的,联想到前些天在blueidea论坛看到的一个帖子,然后就去仔细看了一下,发现有人说这是IE的注释bug.可以通过加clear或者修改注释在程序的位置(其实就是程序员把注释写到div里面去了)。

Read more...

!important的顺序问题

虽然很早就已经从w3cn.org看到这个hack,但是今天突然发现以前的想法是错的。我以前知道只有IE不支持!important这个语法,其他浏览器都支持,所以在出现浏览效果不同的时候,就强行给某些属性加!important,但是都是后写!important,因为我的理解是IE不支持!important,那它就认定先写的没有!important的值,而后面写了!important的值就是其他浏览器读取。今天看到这个,发现我的想法是不对的。

正确的做法应该先写带!important的值,这样其他浏览器就认定这个优先级最高,读取这个值,然后再写一个为IE的值,由于它不支持!important语法,所以先写的带!important的值被IE读取为那个值,之后又被下面定义的值所覆盖掉,这样在IE里认定的后来写的值,而不是先前写的带!important的值。所以,以后要做CSS Hack,记得要先定义带!important的!!!!!!!!!

网页标准之常见错误

要想达到This Page Is Valid XHTML 1.0 Strict!的目标,必须慢慢积累。写网页代码的时候要逐步向标准靠拢。最开始就要避免一些常规的错误.

1.所有的标签都要用小写。比如a,p,span,ul,li div等等。
2.所有的id,class属性后都要用引号。比如id=”wrapper”,class=”logo”。
3.调用java script最好单独把代码写到js文件里,然后从网页头部调用。并且要加type=”text/JavaScript”,不能用language=”Javascript”。
4.所有的单独标签要用/>关闭。比如<br />,<hr />等等。
5.body里没有onload属性,要实现应该用JS。
6.target=”_blank”不符合严格标准定义,要换rel=”external” via