Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.06.2012, 22:02
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

z-index magic.
Мне нужна ваша помощь в одном вопросе. Есть блок, у которого позиционирование относительное\абсолютное. У этого блока есть потомок, у которого абсолютное позиционирование. Как расположить визуально потомка ниже родителя? Оба блока имеют статичные ширину и высоту.

Вот пример - зелёный блок положить под красный :
http://jsbin.com/ekufop


PS. предпочтительна работа в IE 7,8.
Ответить с цитированием
  #2 (permalink)  
Старый 06.06.2012, 22:06
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

никак, нельзя ребенка положить ниже родителя. Хотя если -1 поставить то должно
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #3 (permalink)  
Старый 06.06.2012, 22:10
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

???

#below {
    z-index:-1;
    background-color: green;
    position: absolute;
    
    top: 20px;
    left: 20px;
    
  }
Ответить с цитированием
  #4 (permalink)  
Старый 06.06.2012, 22:11
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

ну да, -1 вроде помогает.. не зря я с сомнением ответил.. лень тестить просто было.
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #5 (permalink)  
Старый 06.06.2012, 22:15
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

devote, Deff, спасибо. Но в IE 7 не работает этот способ. Что делать?
http://jsbin.com/ekufop/2
Ответить с цитированием
  #6 (permalink)  
Старый 06.06.2012, 22:21
Профессор
Отправить личное сообщение для Seva1986 Посмотреть профиль Найти все сообщения от Seva1986
 
Регистрация: 01.10.2011
Сообщений: 422

Сообщение от melky
Но в IE 7 не работает этот способ.
Не у верен, но попробуй поставить родителью z-index:1 например. вроде бы это помогает но точно не помню.

Не вроде не работает...

Последний раз редактировалось Seva1986, 06.06.2012 в 22:25.
Ответить с цитированием
  #7 (permalink)  
Старый 06.06.2012, 22:32
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Seva1986
Не у верен, но попробуй поставить родителью z-index:1 например. вроде бы это помогает но точно не помню.
http://jsbin.com/ekufop/3
Сломалось .
Ответить с цитированием
  #8 (permalink)  
Старый 06.06.2012, 22:49
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
  <title>:)</title>
<style>
  #above, #below {
    width: 300px;
    height: 300px;
  }
  
  #above {
    background-color: red;
    position: relative;

    top: 10px;
    left: 15px;

  }

  #below {
    background-color: green;
    position: absolute;

    z-index: -1;
    top: 20px;
    left: 20px;


	/* весь этот говнокод ради ИЕ7 */
	border: 0px solid green;
	background-color: expression("transparent");
	width: expression(this.oldWidth?1:(this.oldWidth=this.currentStyle.width),parseInt(this.oldWidth)-parseInt(this.currentStyle.left)+"px");
	height: expression(this.oldHeight?1:(this.oldHeight=this.currentStyle.height),parseInt(this.oldHeight)-parseInt(this.currentStyle.top)+"px");
	border-bottom-width: expression(this.currentStyle.top);
	border-right-width: expression(this.currentStyle.left);
  }
</style>
</head>
<body>
  <div id="above">
    Hello World
    <div id="below"></div>
  </div>
</body>
</html>
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #9 (permalink)  
Старый 06.06.2012, 22:55
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

melky,
Помню что как то боролся,(посколь до devote expression не пользовался) но нужно устраивать танцы с бубном, в принципе, если делать равными квадратами и не на родителе, а с наездом с одинаковым позиционированием - вродь проблем не возникает (Или потомственость оч актуальна ?
Ответить с цитированием
  #10 (permalink)  
Старый 06.06.2012, 22:55
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

devote, абалденно. Не могли бы Вы пояснить, почему он работает?

Сохранил как
http://jsbin.com/ekufop/5/



PS. в карме защита от накрутки =)


Сообщение от Deff
melky,
Помню что как то боролся,(посколь до devote expression не пользовался) но нужно устраивать танцы с бубном, в принципе, если делать равными квадратами и не на родителе, а с наездом с одинаковым позиционированием - вродь проблем не возникает (Или потомственость оч актуальна ?
само собой, я знаю, как это делается по-нормальному. но в этой ситуации надо было именно через потомка и родителя.

Этот код относится к имплементации box-shadow для IE. Так "странно", потому что это единственный адекватный и нетормозящий способ.

... а ещё у меня на ноуте не проставлены видео драйверы, и фильтры вроде Shadow у меня не отображаются с остальными всё ок.

Последний раз редактировалось melky, 06.06.2012 в 22:59.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Реализация Set и Map FINoM Ваши сайты и скрипты 5 22.02.2012 03:12
Помогите сверстать . Проблема с margin auto и z index 0931454574 (X)HTML/CSS 10 12.08.2011 20:32
Чем занимаются JS-программеры. JSTalker Оффтопик 69 02.02.2011 10:18