1

问题:在我调整浏览器大小之前,图片不会显示,或者每张图片只显示一小部分;每次重新加载页面时,结果都是随机的。重新加载页面 10 次,我可以获得 10 种不同的结果。

调整窗口大小后,页面将完全按照应有的外观显示,即使将页面调整回原始大小,它也会继续工作。

在一个非常简单的网页遇到问题后,

js小提琴在这里(工作得很好):

http://jsfiddle.net/grDvW/5/

我发现我可以对页面源进行的一项更改是删除

<!DOCTYPE html> 

没有其他更改可以解决问题,但删除该标签可以 100% 解决问题。为什么是这样??

HTML:

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style/style.css">
<title>Title</title>
<meta name="keywords">
<meta name="description" content="The GameMode Hub is a Minecraft Server Network bringing together all of Minecraft's best and brightest server owners to present the gaming community with the largest collection of Minecraft Servers in the world!">
<meta name="author" content="Jonathan Todd">

</head>

<body>
<div class="wrap">
    <!-- begin wrap :: this will keep all of the stuff neat and in one place -->
    <div class="login-screen bg-dirt">
        <!-- begin login screen, background dirt :: sets up a background for the login and styles it with a dirt tile and holds all login elements -->
    </div>
    <!-- end login screen, background dirt -->
    <div class="welcome-screen">
        <!-- begin welcome screen :: this will hold the elements within the welcome screen, mainly just a title and the two moving wall pieces -->
        <div class="wall-left">
            <!-- begin wall left :: must I explain this? It opens and closes with the other wall -->
            <img src="http://www.new.gamemode.org/images/wall_left.png">
        </div>
        <!-- end wall left -->
        <div class="wall-right">
            <!-- begin wall-right :: must I explain this? It opens and closes with the other wall -->
            <img src="http://www.new.gamemode.org/images/wall_right.png">
        </div>
        <!-- end wall right -->
        <img class="welcome-logo" src="http://www.new.gamemode.org/images/logo.png">
        <img class="welcome-shadows" src="http://www.new.gamemode.org/images/shadows_fast.png">
    </div>
    <!-- end welcome screen -->
</div>
<!-- end wrap -->
</body>
</html>

CSS:

/* Style Setup */
body, div {
margin:0;
padding:0;
-webkit-perspective:6500;
}
table {
border-collapse:collapse;
border-spacing:0;
}
fieldset, img {
border:0;
}
address, caption, cite, code, dfn, th, var {
font-style:normal;
font-weight:normal;
}
caption, th {
text-align:left;
}
h1, h2, h3, h4, h5, h6 {
font-size:100%;
font-weight:normal;
}
q:before, q:after {
content:'';
}
abbr, acronym {
border:0;
}
.wrap, html {
width:100%;
margin:0px;
padding:0px;
height:100%;
overflow:hidden;
}
/* Style Start */
 .bg-dirt {
}
.login-screen {
z-index:0;
}
.welcome-screen {
z-index:1;
width:100%;
height:100%;
}
.wall-left {
position:absolute;
z-index:2;
height:100%;
left:0px;
}
.wall-right {
position:absolute;
z-index:3;
height:100%;
right:0px;
}
.welcome-logo {
position:absolute;
z-index:4;
margin-left:auto;
margin-right:auto;
}
.welcome-shadows {
position:absolute;
z-index:5;
width:100%;
}
4

2 回答 2

0

我不确定为什么会这样,但是:

  • 不是标签。它说您的文档是 HTML(版本 5)。除非您知道自己在做什么,否则不应删除它。没有它,浏览器会认为您正在使用 html4,如果您仍然使用 html 5 认为可能会出现奇怪的想法。
  • 尝试编写更多类似 xml 的代码。例如,我尝试使用您的代码关闭 img 标签,它适用于我(最新的 chrome @ mac os):

        <div class="wall-left">
            <!-- begin wall left :: must I explain this? It opens and closes with the other wall -->
            <img src="http://www.new.gamemode.org/images/wall_left.png" />
        </div>
        <!-- end wall left -->
        <div class="wall-right">
            <!-- begin wall-right :: must I explain this? It opens and closes with the other wall -->
            <img src="http://www.new.gamemode.org/images/wall_right.png" />
        </div>
    

(请注意 img 标签以 /> 结尾)

于 2013-09-24T17:08:39.353 回答
-1

你甚至为一个问题写这样的标题而感到羞耻。

html,body { height: 100%; width: 100%; }

编辑

至于为什么删除 doctype 使它起作用,老实说,我不知道。但是,您的 body 元素上没有高度,因此可能最终会隐藏超出其边界的东西(实际上是width: 100%; height: 0;),并且确实会这样做,尽管在奇怪的地方,这就是为什么您的图像有时会被截断的原因。

我看到您已经将html高度设置为 100%,但您还需要将身体高度设置为 100%。

于 2013-09-24T17:08:28.910 回答