IE中HTML按钮的默认CSS边框属性是什么?

时间:2010-01-02 15:29:53

标签: html css internet-explorer button

我有以下代码:

<button onmousemove="this.style.border='2px #555555 solid';" 
   onmouseout="this.style.border='';">Test</button>

mousemove上,它会正确更改指定的边框。在mouseout我的意图是将边框改回原来的边框。这适用于基于Gecko的浏览器,但不适用于IE。 IE删除所有边框,按钮变为2D。

如何取回按钮的原始3D外观?

注意:为了进行调试,我尝试alert(this.style.border)获取原始边框的值。它显示为空白。所以原始边界值似乎是空白的。但设置为空白并不会带来原始回顾。 :(

4 个答案:

答案 0 :(得分:3)

尝试设置和清除元素的类并将边框值分配给类。如下所示:

.buttonHover
{
  border: 2px #555555 solid
}

<button onmousemove="this.className='buttonHover';" onmouseout="this.className='';">Test</button>

请注意,这个简单的JS代码会破坏分配给元素的现有类(如果有的话)。如果您要使用其他课程,请添加一条注释,声明情况,我会相应地更改代码。

答案 1 :(得分:2)

据我所知,一旦设置了元素的边框,就无法恢复原始的操作系统外观,尽管奇怪的是即使清空border也无法完成工作。呃,好吧。操作系统风格不仅仅是经典的边框,还包括黑色轮廓(取决于操作系统的视觉设置,甚至更多)。

看作IE&lt; 8不理解outline,我认为最好的解决方法是在按钮周围放置一个元素,并在悬停时突出显示。

答案 2 :(得分:0)

建议使用CSS而不是javascript。您可以执行以下操作。 仅定义按钮的悬停属性。

HTML:

<button value="Hello">Hello</button>

CSS:

button:hover
{
    border:1px solid #333;
}

答案 3 :(得分:0)

我认为您正在寻找的内容可以在bowers用户代理CSS中找到。这是一个表格,可以让您了解不同浏览器http://css-class.com/test/css/defaults/UA-style-sheet-defaults.htm的最新情况。