我在IE中遇到div
高度和宽度的问题。
在我的网页http://www.ricominciodame.it/eventi.php上,有一些带有黑板风格的div
在Firefox中,它们都可以正常工作,但在IE(7和8)中,宽度较低,背景也会减少。
以下是我的CSS:
div.evento {
background : white url("images/sfondo_evento.png") top no-repeat;
width : 260px;
height : 207px;
margin:5px;
margin-left:0px;
margin-bottom : 20px;
padding-left : 20px;
padding-right : 20px;
padding-top : 20px;
padding-bottom : 20px;
color : white;
}
如何解决此问题?
答案 0 :(得分:7)
您的网页正在由DOCTYPE
引起的quirks mode运行。您必须使用其中任何http://www.w3.org/QA/2002/04/valid-dtd-list.html
此外,最好始终从w3 validator验证您的网站。
答案 1 :(得分:6)
您的doctype是否设置为将浏览器置于标准模式?例如:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
答案 2 :(得分:1)
在设计新页面之前,我总是'重置'css。 我加载我的CSS文件(注意我首先加载重置,然后是实际的布局):
<link rel="stylesheet" href="css-styles/reset.css" />
<link rel="stylesheet" href="css-styles/all.css" />
我的重置CSS如下所示:
/* CSS Document */
/* Clear all styles */
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,
dl, dt, dd, ol, ul, li,
fieldset, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;}
/* remember to define focus styles! */
:focus {
outline: 0;}
body {
line-height: 1;
color: black;
background: white;}
ol, ul {
list-style: none;}
/* tables still need 'cellspacing="0"' in the markup */
table{
border-collapse: separate;
border-spacing: 0;}
caption, th, td {
text-align: left;
font-weight: normal;}
blockquote:before, blockquote:after,
q:before, q:after {
content: "";}
blockquote, q {
quotes: "" "";}
/*Ceal all styles END */
答案 3 :(得分:0)
可能是一个盒子模型问题:http://css-tricks.com/the-css-box-model/
我会做这样的事情:
div.evento {
background : white url("images/sfondo_evento.png") top no-repeat;
width : 300px;
height : 207px;
margin:5px;
margin-left:0px;
margin-bottom : 20px;
color : white;
}
div.evento-inner {
padding-left : 20px;
padding-right : 20px;
padding-top : 20px;
padding-bottom : 20px;
}
在IE中,填充在你声明的260px宽度的每一边占用20px。