2010-09-30 3 views
-1

Как мы можем исправить элемент на странице HTML без использования <!doctype>?позиция: исправлена ​​без использования doctype в IE

+0

'javascript 'похоже, что не имеет значения здесь? –

+7

Вы всегда должны использовать doctype. Я не могу придумать ни одной причины не использовать его. – Gareth

+0

Я не вижу, как относится к доктрине, если только речь идет о фиксированном позиционировании в режиме quirks. – BoltClock

ответ

0

Использование absolute positioning (например, position: absolute или position: fixed) в стиле (examples):

Абсолютные (прокручивается с страницы):

<style type='text/css'> 
#foo { 
    position: absolute; 
    left: 10px; 
    top: 10px; 
} 
</style> 
<div id='foo'>This is foo at 10x10</div> 

Или, если вы предпочитаете рядный:

<div style='position: absolute; left: 10px; top: 10px;'>This is foo at 10x10</div> 

Исправлено (не прокручивается):

<style type='text/css'> 
#foo { 
    position: fixed; 
    right: 10em; 
    top: 2em; 
} 
</style> 
<div id='foo'>This is foo at 10x10</div> 

Или, если вы предпочитаете рядный:

<div style='position: fixed; right: 10em; top: 2em;'>This is foo in the upper right</div> 

Или, если вы хотите сделать это с помощью JavaScript (так как ваш вопрос был originallly помеченной javascript):

var div = document.getElementById('foo'); 
div.style.position = "absolute"; // or "fixed" or whatever 
div.style.left = "10px"; 
div.style.top = "10px"; 

OFF- тема, но я бы всегда рекомендую использовать DOCTYPE. Без этого вы сталкиваетесь с различными причудами почти в каждом браузере. Хотя у вас все еще есть различия в браузерах с DOCTYPE, их меньше и бит менее безумный ...

+2

Это абсолютное позиционирование - div по-прежнему будет прокручиваться со страницы. – BoltClock

+0

@ Единорог Болтклэка: что может быть то, что он хочет, а может и нет (или вы думаете, что вопросник настолько ясен на этом, что он знает, что «фиксированный» - это термин CSS?). Когда вы комментировали, я добавлял ссылки на CSS2.1 и упоминал фиксированное позиционирование. –

+0

ОК, справедливая точка. Сдвиг не был моим, хотя я сделаю +1 для редактирования. – BoltClock

1

Ключ к элементу абсолютной или фиксированной позиции заключается в том, что он является родительским элементом (допустим, контейнер div) иметь position:relative;

например, если у вас есть контейнер DIV, который 960px в ширину и в центре страницы (как показано ниже):

<div class="container"> 
    <div id="AbsolutePositionedBox"> 
     // Box Content Goes Here 
    </div> 
</div> 

СМЧ, чтобы заставить его работать правильно будет:

Как и в случае с упомянутым выше TJ, фиксированное позиционирование остается, даже когда пользователь прокручивает, где абсолютное положение просто позиционируется относительно элемента и будет прокручиваться вместе с остальной частью содержимого.

Опять же, я бы также всегда рекомендую использовать doctype.

Смежные вопросы