当我将border设置为none时,IE8输入类型图像甚至显示边框

时间:2010-01-27 07:53:57

标签: css image internet-explorer-8 input

我使用输入类型图像来显示我的自定义样式按钮,但由于某种原因IE8显示边框,即使我在CSS边框设置为none。在其他浏览器中,它根本没有显示边框。

input[type=image] {
    margin: 0px; 
    padding: 0px;
    border: none;
    border-width: 0px;
    border-style: none;
    background-color: none;
}

3 个答案:

答案 0 :(得分:5)

使用outline CSS属性:

input[type="image"] {
    border: none;
    outline: none;
}

outline在元素的边距周围绘制一条线,而不会影响元素宽度,在这种情况下,IE8可能会指定一个默认大纲。阅读更多相关信息at W3Schools

答案 1 :(得分:1)

首先感谢您提出这个问题。我一年前遇到过这个问题,你可以选择你需要的方式,但我所做的只是导入这个CSS作为我的style.css的起点,因此它不会给我带来不良的输出

/* Reset CSS */

body, html {
    height:100%;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    margin:0;
    padding:0;
}
body {
    line-height:1;
}
ol, ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content:none;
}
:focus {
    outline:0;
}
del {
    text-decoration:line-through;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}

/* Floating & Alignment  */

.fl {
    float:left;
}
.fr {
    float:right;
}
.ac {
    text-align:center;
}
.ar {
    text-align:right;
}

/* Clear Floats  */

.col-full:after {
    content:".";
    display:block;
    height:0;
    clear:both;
    visibility:hidden;
}
.fix {
    clear:both;
    height:1px;
    overflow:hidden;
    margin:-1px 0 0;
}
html body * span.clear, html body * div.clear, html body * li.clear, html body * dd.clear {
    background:none;
    border:0;
    clear:both;
    display:block;
    float:none;
    font-size:0;
    list-style:none;
    overflow:hidden;
    visibility:hidden;
    width:0;
    height:0;
    margin:0;
    padding:0;
}

如果您养成导入此CSS的习惯,它将永远不会在任何浏览器中为您提供不良输出。

谢谢!

答案 2 :(得分:0)

根据我的经验,IE不支持该选择器;给输入一个类,然后用它来设置它。

<input type="image" class="imageinput" name="whatever" />

input.imageinput {
    margin: 0px; 
    padding: 0px;
    border: none;
    background-color: none;
}