Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   z-index magic. (https://javascript.ru/forum/xhtml-html-css/28909-z-index-magic.html)

melky 07.06.2012 07:40

Цитата:

Сообщение от Nanto
Раньше я тоже страдал перфекционизмом, и вылизывал даже для IE6 (хотя бы ради своего эго), но потом пошли крупные проекты косяком, времени стало не хватать - и я забил на IE6-7 (сторонние проекты вообще смотрю только в файербаге) - и никто пока не возмущался...

вот для этого лучше иметь при себе тележку скриптов, чтобы не пришлось над старым IE корпеть.
Цитата:

Сообщение от devote
Идеальное на мой взгляд решение. Спасибо melky, за решение, сам буду пользоваться им.

Рад, что Вам понравилось. Скоро будет дискуссия на тему border-radius в IE :)
Цитата:

Сообщение от Aetae
Честно говоря не вижу причины не сделать так и не парить мозги:

я так же сделал в первый раз,но что-то меня оттолкнуло от этого решения при тестах.


по-моему, умение сделать всё во всех браузерах одинаково - и есть профессионализм и работа.
а сделать сайт можно и под webkit only.

devote 07.06.2012 07:55

melky,
я уже тут слепить успел из всего этого:
<!DOCTYPE html>
<html>
	<head>
		<meta charset=utf-8 />
		<title>:)</title>

		<script type="text/javascript" src="https://gist.github.com/raw/2886470/f9291a41996584aa3ba58170a893ac536c610523/css.min.js"></script>

		<style>
			* { margin:0; padding:0; }
  
			#above {
				background-color: #ccc;
				position: relative;

				top: 50px;
				left: 50px;
				width: 300px;
				height: 300px;

				color: blue;

				box-shadow: -10px 0px 20px 4px rgba( 255, 0, 0, .5 ),
							0px -10px 20px 4px rgba( 0, 255, 0, .5 ),
							10px 0px 20px 4px rgba( 0, 0, 255, .5 ),
							0px 10px 20px 4px rgba( 0, 0, 0, .5 );

				-ie-box-shadow: -10px 0px 20px 4px rgba( 255, 0, 0, .5 ),
							0px -10px 20px 4px rgba( 0, 255, 0, .5 ),
							10px 0px 20px 4px rgba( 0, 0, 255, .5 ),
							0px 10px 20px 4px rgba( 0, 0, 0, .5 );
			}
		</style>
	</head>
	<body>
		<button onclick="
			var style=document.getElementById('above').style;
			style.IeBoxShadow='none'; /* свойство для ИЕ */
			style.boxShadow='none'; /* для всех остальных */
		">Убрать все тени</button>

		<button onclick="
			var style=document.getElementById('above').style;
			style.IeBoxShadow='4px 4px 8px rgba( 0, 0, 0, .6)'; /* свойство для ИЕ */
			style.boxShadow='4px 4px 8px rgba( 0, 0, 0, .6)'; /* для всех остальных */
		">Поставить другие тени</button>

		<div id="above">Hello World</div>
	</body>
</html>

melky 07.06.2012 08:06

Цитата:

Сообщение от devote
melky,
я уже тут слепить успел из всего этого:

вот это скорость)
я только днём собираюсь допилить свой скрипт тени.

devote 07.06.2012 08:09

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

Nanto 07.06.2012 13:26

Понял, наконец! Эмуляция box-shadow для IE? Тогда melky, забудьте про эту возню с z-index. Стоит поставить родителю overflow:hidden/auto; (а такое требуется очень часто, хотя бы для очистки потока) и Ваша имплементация пойдёт лесом.
"Не плодите сущности без нужды" (с) Оккам

devote 07.06.2012 18:10

Nanto,
не устал еще умничать? неужели ты реально думаешь, что все так глупы и тупо ринутся ставить везде overflow:hidden/auto; что бы резко все перестало работать? Поверь, тот кто захочет это использовать ну уж явно не будет ставить подобные параметры там где ему это не нужно, и там где будет использовать подобные решения, да и не просто так сделана отдельное свойство для ИЕ, что бы можно было ставить только там где от него реально будет толк.

И может хватит из себя делать умного то? Чем больше умничаешь, тем хуже о тебе мнение людей. Потому как умничать все умеют, да вот толку от этого мало. А вместо того что бы умничать и показывать свои понты, взял бы да сделал бы что нить дельное, и не крича о том что говно а что нет. Уважение нужно заработать, а так ты просто тролль. И от твоих слов толку мало, да и я тут сижу тролля кормлю зачем-то.

Nanto 07.06.2012 18:50

Цитата:

Сообщение от devote (Сообщение 179879)
Nanto,
не устал еще умничать? неужели ты реально думаешь, что все так глупы и тупо ринутся ставить везде overflow:hidden/auto; что бы резко все перестало работать? Поверь, тот кто захочет это использовать ну уж явно не будет ставить подобные параметры там где ему это не нужно, и там где будет использовать подобные решения, да и не просто так сделана отдельное свойство для ИЕ, что бы можно было ставить только там где от него реально будет толк.

И может хватит из себя делать умного то? Чем больше умничаешь, тем хуже о тебе мнение людей. Потому как умничать все умеют, да вот толку от этого мало. А вместо того что бы умничать и показывать свои понты, взял бы да сделал бы что нить дельное, и не крича о том что говно а что нет. Уважение нужно заработать, а так ты просто тролль. И от твоих слов толку мало, да и я тут сижу тролля кормлю зачем-то.

Хватит мою персону обсуждать, а?
Какой прок в эмуляции чего-то там, если он будет использоваться в жёстко заданных рамках? Ради отдельной эмуляции можно картинку вставить, а тут, я так понял, ставится цель некоей автоматизации - иначе какой смысл?

devote 07.06.2012 19:13

Цитата:

Сообщение от Nanto
Хватит мою персону обсуждать, а?

ну кроме тебя тут вроде никто больше не показывает свое Я. Ты же вроде как тут профессионалом выступаешь, выговаривая в своих речах о том что мы все такие лохи а ты профи.

Цитата:

Сообщение от Nanto
Какой прок в эмуляции чего-то там, если он будет использоваться в жёстко заданных рамках?

Может тебе и нет в этом прока, но не забывай, не все такие как ты. Нас миллионы и все мы разного мнения.

Цитата:

Сообщение от Nanto
Ради отдельной эмуляции можно картинку вставить, а тут, я так понял, ставится цель некоей автоматизации - иначе какой смысл?

а что запрещено херней пострадать? или мы время тебе тратим? чем-то задерживаем тебя? У тебя работа стоит из-за нас? или еще какой недуг? Какая тебе разница на что мы тратим свое личное время, это наша проблема. Ты уж лучше как нибудь подумай о своих делах, о своей трате времени и т.д. Тебя наши действия ну никак не должны ничем ограничивать. Без обид.

melky 08.06.2012 08:21

Цитата:

Сообщение от Nanto
Ради отдельной эмуляции можно картинку вставить, а тут, я так понял, ставится цель некоей автоматизации - иначе какой смысл?

ха-ха, такие приёмы у меня вызывают истерику. А если надо сделать блок полупрозрачным, вы тоже картинку ставить будете?

Цитата:

Сообщение от Nanto
Понял, наконец! Эмуляция box-shadow для IE? Тогда melky, забудьте про эту возню с z-index. Стоит поставить родителю overflow:hidden/auto; (а такое требуется очень часто, хотя бы для очистки потока) и Ваша имплементация пойдёт лесом.
"Не плодите сущности без нужды" (с) Оккам

я оборачиваю содержимое блока элементом по совету Aetae,и значения свойств вроде overflow, background-color мигрируют на wrapper.

Так что никуда лесом она не идёт. А если даже идёт - нечему удивляться, это же костыль.


Часовой пояс GMT +3, время: 04:28.