Вернуться   Дизайнерский форум » ВЕБ-ПРОГРАММИРОВАНИЕ » HTML, CSS, JavaScript

Объясняем код

Обсуждение темы Объясняем код в разделе HTML, CSS, JavaScript, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; На главной странице студии Лебедева такой вод код в стиле: Цитата: .motto_box { width: 100%; max-width: 900px; width: expression( ( document.getElementsByTagName('BODY') && document.getElementsByTagName("BODY")[0].clientWidth ...


Закрытая тема
 
Опции темы
Старый 04.06.2005, 02:49   #1
На главной странице студии Лебедева такой вод код в стиле:
Цитата:
.motto_box { width: 100%; max-width: 900px; width: expression( ( document.getElementsByTagName('BODY') && document.getElementsByTagName("BODY")[0].clientWidth < 900 ) ? '100%' : '900px'); } .motto { width: 780px; height: 300px; background-position: right top; background-image: url("/studio/us/i/m/5d06f930553ce05f.png"); background-image: expression( (/MSIE ((5\.5)|[6-9])/.test(navigator.userAgent) && navigator.platform == "Win32" ) ? "none" : "url(/studio/us/i/m//studio/us/i/m/5d06f930553ce05f.gif)" ); filter: progidXImageTransform.Microsoft.AlphaImageLoader (src=/studio/us/i/m/5d06f930553ce05f.png,sizingMethod=scale,enabled=tr ue); }
Конкретно интересно что значат строки:
width: expression( ( document.getElementsByTagName('BODY') && document.getElementsByTagName("BODY")[0].clientWidth < 900 ) ? '100%' : '900px')

background-image: expression( (/MSIE ((5\.5)|[6-9])/.test(navigator.userAgent) && navigator.platform == "Win32" ) ? "none" : "url(/studio/us/i/m//studio/us/i/m/5d06f930553ce05f.gif)" ); filter: progidXImageTransform.Microsoft.AlphaImageLoader (src=/studio/us/i/m/5d06f930553ce05f.png,sizingMethod=scale,enabled=tr ue);

pro_rock добавил [date]1117839084[/date]:
смайлики случайно попали, должно быть двоеточие и скобка
 
Старый 04.06.2005, 02:49
Ссылки
Старый 04.06.2005, 13:10   #2
это логические выражения. Тут довольно несложно разобраться, вот смотри:

width: expression( ( document.getElementsByTagName('BODY') && document.getElementsByTagName("BODY")[0].clientWidth < 900 ) ? '100%' : '900px')

итак:

1) document.getElementsByTagName('BODY') - пытаемся начать работу с объектом; если всё ок то получаем TRUE, если по какой-то причине с объектом работать не получится, то получаем FALSE;

2) document.getElementsByTagName("BODY")[0].clientWidth < 900 - сравниваем ширину объекта, обозначенного тегом <BODY> (т.е. ширину документа) и число 900; если документ шире, то FALSE, если уже - TRUE;

3) далее разбираем условные обозначения:
&& - и
? - тогда
: - иначе

таким образом, например, если работа с объектом возможна и его щирина меньше 900, то получаем:
TRUE && TRUE ? 100% : 900

что в результате возвращает '100%'
 
Старый 05.06.2005, 01:15   #3
background-image: expression( (/MSIE ((5\.5)|[6-9])/.test(navigator.userAgent) && navigator.platform == "Win32" ) ? "none" : "url(/studio/us/i/m//studio/us/i/m/5d06f930553ce05f.gif)" ); filter: progidXImageTransform.Microsoft.AlphaImageLoader(s rc=/studio/us/i/m/5d06f930553ce05f.png,sizingMethod=scale,enabled=true);

А это так полагаю: если win и IE то картинка в гифе, а нет то в png.
А че это за фильтр такой?
 
Старый 05.06.2005, 01:48   #4
хз
 
Старый 05.06.2005, 01:48
Закрытая тема





Текущее время: 05:25. Часовой пояс GMT +4.

Реклама на форуме Условия размещения рекламы
Биржа ссылок Заработай на сайте!
Дизайнерский форум