Html Internet Explorer错误的页边距,其他人好

Html Internet Explorer错误的页边距,其他人好,html,css,margin,Html,Css,Margin,我有个小问题。我第一次做UL菜单,右边有一个箭头弹出。。。没有JS 我有个小问题。在Internet Explorer中。。。IE在2px的子菜单ul li中显示边距(因此我们可以看到页面背景)。换句话说,一切都很好 另外,我想看到UL右边的PNG。如果UL为左0px-100px,则pic将显示在左100px-122px处。(不显示图片,其他人显示。) 好:FF 9.0.1,Safari 5.1.2,Opera 11.60,Chrome 16.0.912.75 错误:IE 9.0.4 我确实试过

我有个小问题。我第一次做UL菜单,右边有一个箭头弹出。。。没有JS

我有个小问题。在Internet Explorer中。。。IE在2px的子菜单ul li中显示边距(因此我们可以看到页面背景)。换句话说,一切都很好

另外,我想看到UL右边的PNG。如果UL为左0px-100px,则pic将显示在左100px-122px处。(不显示图片,其他人显示。)

好:FF 9.0.1,Safari 5.1.2,Opera 11.60,Chrome 16.0.912.75 错误:IE 9.0.4

我确实试过了,但是。。。border在这方面出了问题:

#subMenu ul li{
    list-style-type: none;
    margin: -2px;
}
以下是我的意思: 以下是测试页面:

<html>
    <head>

        <style>
        html, body{
            margin: 0px;
            padding: 0px;
            font-family: Arial;
            font-size: 12px;
        }

        #wrapper{
        }

        #subMenu{
            padding: 5px;
        }

        #subMenu .wrapMenu{
            width: 180px;
        }

        #subMenu ul{
            list-style-type: none;
            width: 100%;
            padding: 0px;
            margin: 0px;
            height: auto;
        }

        #subMenu ul li{
            list-style-type: none;
            margin: 0px;
        }

        #subMenu ul li:hover{
            width: 100%;
        }

        #subMenu ul li a,
        #subMenu ul li a:link,
        #subMenu ul li a:visited{
            text-decoration: none;
            color: #b9b9b9;
            display: block;
            background-color: #f5f5f5;
            border-left: 1px solid #c3c3c3;
            border-bottom: 1px solid #c3c3c3;
            border-right: 1px solid #c3c3c3;
            width: 100%;
            height: 48px; /* padding-top + padding-bot + height de ul li span*/
        }

        /*f9f9f9*/
        #subMenu ul li a:hover{
            color: #7a7a7a;
            border-right: 0px;
            background-color: #f9f9f9;
        }

        #subMenu ul li span{
            width: 100%;
            float: left;
            height: 20px;
            display: block;
            padding: 14px 6px 14px 20px;
        }

        #subMenu ul li span:hover{
            background: transparent url('subMenu_Arrow.png') no-repeat 180px 0px;
        }

        #subMenu ul li a.first{
            border-top-left-radius: 3px;
            border-top: 1px solid #c3c3c3;
        }

        #subMenu ul li a.last{
            border-bottom-left-radius: 3px;
        }

        </style>
    </head>

    <body>
        <div id="subMenu">
            <div class="wrapMenu">
                <ul>
                    <li><a class="first" href="#"><span>Arrêts</span></a></li>
                    <li><a href="#"><span>Avis</span></a></li>
                    <li><a href="#"><span>Planibus</span></a></li>
                    <li><a class="last" href="#"><span>Trajets</span></a></li>
                </ul>
            </div>
        </div>

    </body>
</html>

html,正文{
边际:0px;
填充:0px;
字体系列:Arial;
字体大小:12px;
}
#包装纸{
}
#子菜单{
填充物:5px;
}
#子菜单wrapMenu{
宽度:180px;
}
#子菜单ul{
列表样式类型:无;
宽度:100%;
填充:0px;
边际:0px;
高度:自动;
}
#子菜单ul li{
列表样式类型:无;
边际:0px;
}
#子菜单ul li:悬停{
宽度:100%;
}
#子菜单ul li a,
#子菜单ul li a:链接,
#子菜单ul li a:已访问{
文字装饰:无;
颜色:#b9b9b9;
显示:块;
背景色:#F5;
左边框:1px实心#C3C3;
边框底部:1px实心#C3C3;
右边框:1px实心#C3C3;
宽度:100%;
高度:48px;/*衬垫顶部+衬垫底部+高度*/
}
/*f9f9f9*/
#子菜单ul li a:悬停{
颜色:#7a7a;
右边框:0px;
背景色:#f9f9f9;
}
#子菜单ul li span{
宽度:100%;
浮动:左;
高度:20px;
显示:块;
填充:14px 6px 14px 20px;
}
#子菜单ul li span:悬停{
背景:透明url('subMenu_Arrow.png')无重复180px 0px;
}
#子菜单ul li a.first{
边框左上半径:3px;
边框顶部:1px实心#C3C3;
}
#子菜单ul li a.last{
边框左下半径:3px;
}
感谢您的帮助。

您需要指定a作为标记的第一行。如果没有
doctype
,IE将在中渲染,这基本上就是IE 5.5渲染引擎。怪癖模式会对盒子模型产生很大影响

例如:

<!doctype html>


指定
doctype
将在屏幕截图中产生正确的结果。

哈哈,你今天教了我一些东西!太愚蠢了。。。我从没想过IE会因此而那样做。我应该开始在我的真实页面而不是测试页面中工作。注意。谢谢我将在5点后尽快接受。即使经过6年的网络开发,我们也总能学到一些愚蠢但重要的东西!很乐意帮忙!事实证明,这里的许多“WTF IE”问题都可以通过指定
doctype
:)来回答