针对border边框属性在浏览器中的渲染方式很早以前就开始在QQ群中看到大家在讨论,而我也一直以border:0 none;的方式处理。其中当然也是有我自己为什么要做的原因,对于这个原因在下面的分析中将会提到。在对border边框属性进行分析之前,需要说明的几点内容是:
为了能更好的对边框的样式进行对比,这里我们选用的是“按钮”元素,但使用的标签却是不同的,它们分别是input标签元素和button标签元素。顺带需要提到的一点就是,这两个标签元素在各个浏览器中的共同点是都属于系统控件元素,边框样式以及按钮背景都是跟系统主题有着绝对性的关系。
使用相同的XHTML结构代码,分别针对FF浏览器和IE浏览器进行对比。
<input type="button" value="按钮" />
<hr />
<button>按钮</button>
通过默认的当前系统主题的样式影响,我们发现IE浏览器在对button和input这两个标签元素的解析上已经是存在着一点细节上的不同,但就目前这个系统主题中所看到的页面表现效果是近乎于相同的,关于这点有兴趣的同学可以自行实验一下。上列所看到的无任何CSS样式定义之前的属性结果中,我们得到的结果是:
* FF浏览器:input标签和button标签的边框样式为border-width:3px; border-style:outset; border-color:#E5E5E5;
* IE浏览器:input标签边框样式为border-width:2px; border-style:outset;而button标签边框样式为border-width:2px;
有了这些数据之后,我们再看看当我们针对border边框属性定义了样式之后会是怎么样的一个结果。