Показать сообщение отдельно
  #28 (permalink)  
Старый 21.06.2012, 09:09
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от Octane
Вы название темы читаете? Стандартное оформление никак не вернуть, хоть все свойства перекопируй, оформление контролов не станет, как до изменения стилей, соответствующим интерфейсу ОС.
Ну, я допускаю и просто получение дефолтных значений, и дальнейшее присвоение конкретному элементу
Но в принципе вы правы.
Например такой пример будет работать некорректно в Opera:
<!DOCTYPE HTML>
<html>
	<head> 
	</head>
	<body>
		<textarea>textarea</textarea>
		<textarea disabled>textarea</textarea>
		<script>
		var color1 = window.getComputedStyle(document.getElementsByTagName('textarea')[0], null).backgroundColor;
		var color2 = window.getComputedStyle(document.getElementsByTagName('textarea')[1], null).backgroundColor;
		console.log(color1, color2);
		</script>
		<style>
		body {
			background-color : yellow;
		}
		textarea {
			background-color : red;
		}
		</style>
		<script>
		var color_new1 = window.getComputedStyle(document.getElementsByTagName('textarea')[0], null).backgroundColor;
		var color_new2 = window.getComputedStyle(document.getElementsByTagName('textarea')[1], null).backgroundColor;
		console.log(color_new1, color_new2);
		
		document.getElementsByTagName('textarea')[0].style.backgroundColor = color1;
		document.getElementsByTagName('textarea')[1].style.backgroundColor = color2;
		
		color_new1 = window.getComputedStyle(document.getElementsByTagName('textarea')[0], null).backgroundColor;
		color_new2 = window.getComputedStyle(document.getElementsByTagName('textarea')[1], null).backgroundColor;
		console.log(color_new1, color_new2);
		</script>
	</body>
</html>

Вывод в консоль:
Цитата:
transparent, transparent
color.htm:6
rgb(255, 0, 0), rgb(255, 0, 0)
color.htm:11
transparent, transparent
И получаем в итоге уже по-настоящему прозрачные элементы
Ответить с цитированием