Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Работа над сайтом > HTML/DHTML/CSS/JS/VB

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.06.2006, 19:55
Konstantin S. вне форума Посмотреть профиль Отправить личное сообщение для Konstantin S. Посетить домашнюю страницу Konstantin S. Найти все сообщения от Konstantin S.
  № 1  
Ответить с цитированием
Konstantin S.

Регистрация: Jun 2006
Сообщений: 7
По умолчанию Как такое сделать в IE ?

Добрый день.

Вот такой вот вопросик есть к участникам форума...
Имеем вот такой HTML файл:

Код HTML:
<html>
<body style="border: 1px dashed #999;">
<div style="background-color: #9F9; position:absolute; left: 0px; top: 0px;">ABSOLUTE DIV</div>
<div style="background-color: #99F;">NORMAL DIV</div>
</body>
</html>
В браузере видим такую картинку:


Теперь добавляем в заголовок вот такой стиль:
Код:
html {margin-top: 100px;}
FireFox показывает вот так:

(то есть, он весь контент сместил вниз).

А вот в Internet Explorer вниз смещается весь контент, кроме абсолютно позиционированного слоя (ABSOLUTE DIV).

Не знает ли кто-нибудь, как сделать, чтобы в IE вниз сместилось все ?

Заранее спасибо.

Старый 30.06.2006, 22:12
KidsKilla вне форума Посмотреть профиль Отправить личное сообщение для KidsKilla Посетить домашнюю страницу KidsKilla Найти все сообщения от KidsKilla
  № 2  
Ответить с цитированием
KidsKilla
.grin! wuz here
 
Аватар для KidsKilla

Регистрация: Aug 2004
Адрес: paradise city
Сообщений: 3,981
Отправить сообщение для KidsKilla с помощью ICQ
никак. создать див{позишн:релатив}
и внутри него уже рулить его же и маргином награждать
__________________
Breakcore them all!

Старый 30.06.2006, 22:46
Konstantin S. вне форума Посмотреть профиль Отправить личное сообщение для Konstantin S. Посетить домашнюю страницу Konstantin S. Найти все сообщения от Konstantin S.
  № 3  
Ответить с цитированием
Konstantin S.

Регистрация: Jun 2006
Сообщений: 7
То есть засунуть все, что между <body> </body> в отдельный <div> ?
Хммм... А все равно div'ы с position:absolute не сместятся...

Хотя, я тут кое-что уже "нарыл"...
Вот:
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style type="text/css">
body { position: relative; margin-top: 100px; }
</style>
</head>
<body style="border: 1px dashed #999;">
<div style="background-color: #9F9; position:absolute; left: 0px; top: 0px;">ABSOLUTE DIV</div>
<div style="background-color: #99F;">NORMAL DIV</div>
</body>
</html>
Если вставить DOCTYPE в шапку, то, вроде, содержимое съезжает вниз. Однако, слои наложены друг на друга. А так быть не должно...

Старый 05.07.2006, 04:05
KidsKilla вне форума Посмотреть профиль Отправить личное сообщение для KidsKilla Посетить домашнюю страницу KidsKilla Найти все сообщения от KidsKilla
  № 4  
Ответить с цитированием
KidsKilla
.grin! wuz here
 
Аватар для KidsKilla

Регистрация: Aug 2004
Адрес: paradise city
Сообщений: 3,981
Отправить сообщение для KidsKilla с помощью ICQ
не просто дмв, а див{позишн:релатив}

> Хммм... А все равно div'ы с position:absolute не сместятся...

попробуй сперва, потом говори.
__________________
Breakcore them all!

Старый 05.07.2006, 15:09
All87 вне форума Посмотреть профиль Отправить личное сообщение для All87 Найти все сообщения от All87
  № 5  
Ответить с цитированием
All87
 
Аватар для All87

Регистрация: Jul 2006
Сообщений: 58
Отправить сообщение для All87 с помощью ICQ Отправить сообщение для All87 с помощью Skype™
если ниче не получается (или просто впадлу чтобы получалося), просто сделай так:
1. margin-top присваиваеш body
2. перед </body> вставь
Код:
<script>
	bd=document.body.style.marginTop;
	dv=document.getElementsByTagName('div');
	for (i=0; i<dv.length; i++)
	{
		if (dv[i].style.position=='absolute')
		{
			if(dv[i].style.top)
			{
				dvI=dv[i].style.top;
				dv[i].style.top=(dvI.replace('px','')*1)+(bd.replace('px','')*1);
				alert(dvI);
			}
		}
	}
</script>

Чикс и готово
__________________
имхо деньги - жидкий стул

Старый 05.07.2006, 15:11
All87 вне форума Посмотреть профиль Отправить личное сообщение для All87 Найти все сообщения от All87
  № 6  
Ответить с цитированием
All87
 
Аватар для All87

Регистрация: Jul 2006
Сообщений: 58
Отправить сообщение для All87 с помощью ICQ Отправить сообщение для All87 с помощью Skype™
блин! забыл в предыдущем коде алерт убрать, так что сделай это сам просто убери -- alert(dvI);
__________________
имхо деньги - жидкий стул

Старый 06.07.2006, 09:38
Konstantin S. вне форума Посмотреть профиль Отправить личное сообщение для Konstantin S. Посетить домашнюю страницу Konstantin S. Найти все сообщения от Konstantin S.
  № 7  
Ответить с цитированием
Konstantin S.

Регистрация: Jun 2006
Сообщений: 7
Цитата:
Сообщение от KidsKilla
не просто дмв, а див{позишн:релатив}

> Хммм... А все равно div'ы с position:absolute не сместятся...

попробуй сперва, потом говори.
Снимаю шляпу перед Вами.

Вот такой код:
Код HTML:
<html>
<head>
<style type="text/css">
/* body { position:relative;left:0px;top:100px; background-color: #CFC; } */
</style>
</head>
<body style="border: 1px dashed #999;">

<div style="position:relative;margin-top:100px;">

<div style="background-color: #9F9; position:absolute; left: 0px; top: 0px;">ABSOLUTE DIV</div>
<div style="background-color: #99F;">NORMAL DIV</div>
<div>TEST TEST TEST</div>

</div>

</body>
</html>
Работает как мне надо. Отдельными строками выделен див, про который Вы писали. Единственное, я не могу понять, почему это работает ?


Последний раз редактировалось Konstantin S.; 06.07.2006 в 09:41.
Старый 06.07.2006, 09:43
Konstantin S. вне форума Посмотреть профиль Отправить личное сообщение для Konstantin S. Посетить домашнюю страницу Konstantin S. Найти все сообщения от Konstantin S.
  № 8  
Ответить с цитированием
Konstantin S.

Регистрация: Jun 2006
Сообщений: 7
Цитата:
Сообщение от All87
если ниче не получается (или просто впадлу чтобы получалося), просто сделай так:
1. margin-top присваиваеш body
2. перед </body> вставь
[code]...[СODE]

Чикс и готово
Я как раз этот вариант оставил на потом. Идея с дивом мне больше нравится, так как меньше писанины.

Старый 06.07.2006, 21:20
KidsKilla вне форума Посмотреть профиль Отправить личное сообщение для KidsKilla Посетить домашнюю страницу KidsKilla Найти все сообщения от KidsKilla
  № 9  
Ответить с цитированием
KidsKilla
.grin! wuz here
 
Аватар для KidsKilla

Регистрация: Aug 2004
Адрес: paradise city
Сообщений: 3,981
Отправить сообщение для KidsKilla с помощью ICQ
работает потому что у родителя относительное позиционирование. (по умолчанию -- статическое) позишн релатив кроме прочего нужен как раз для того чтобы вложеные элементы с абсолютной позицией отсчитывались от этого элемента.
__________________
Breakcore them all!

Старый 07.07.2006, 12:11
Konstantin S. вне форума Посмотреть профиль Отправить личное сообщение для Konstantin S. Посетить домашнюю страницу Konstantin S. Найти все сообщения от Konstantin S.
  № 10  
Ответить с цитированием
Konstantin S.

Регистрация: Jun 2006
Сообщений: 7
Спасибо за подсказку. Наконец-то я нашел, что искал.

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:23.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.