"переполнение: скрыто" недопустимо в ie - PullRequest
0 голосов
/ 24 октября 2011
<html>
<head>
<style>
html{ overflow:hidden;}
body{ overflow:hidden; height:100%; background-color:blue; margin:0px;}
div{ height:3000px; background-color:red; margin:30px;}
</style>
</head>

<body>
<div>dasdasd</div>
</body>
</html>

Вот HTML-код. Когда он работает в стандартном браузере, тег div продолжает показываться в окне. Но он работает, т.е. когда вы выбираете слова «dasdasd» и перетаскиваете вниз, тег body будет прокручиваться, а слова «dasdasd» будут скрываться, если вы не отключите функцию выбора. Может ли кто-нибудь дать мне другое решение?

Как и ответ Спудли, DOCTYPE вызывает проблему, но когда в стандартном режиме тег body продолжает прокручиваться, кто-нибудь может решить проблему?

Ответы [ 2 ]

3 голосов
/ 24 октября 2011

Проблема в том, что вы пропускаете декларацию <!DOCTYPE>.

Когда IE видит HTML-код без DOCTYPE, он переходит в режим причуд.

В режиме причуд браузер эффективно делает страницу обратно совместимой с IE5. Он изменяет способ рендеринга основного макета блока и устраняет поддержку большого количества стандартного CSS.

Добавьте следующий тип документа в верхнюю часть вашей страницы (над тегом <html>), и вы увидите, что все идет правильно:

<!DOCTYPE html>
0 голосов
/ 24 октября 2011

Попробуйте это:

body {
    background-color: blue;
    height: 100%;
    margin: 0 auto;
    overflow: auto;
}
div {
    background-color: red;
    margin: 30px;
    overflow: auto;
}

Надеюсь, это сработает ... Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...