border-spacing для IE

Update: 06.11.08
ЕЩЁ раз обращаю внимание тех, кто бездумно скопирует и будет использовать приведённый рецепт (судя по количеству почитателей этого поста, сектантов культа Режь-Клей тьма) – если вам нужен border-spacing: 0, прочитайте ДО КОНЦА, а лучше сразу последнюю строчку.

Делюсь грязным хаком, для добавления поддержки border-spacing в IE. Собственно сам css:

table {
border-spacing: 50px; /* для всех кто в теме */
scrollbar-face-color: expression( runtimeStyle.scrollbarFaceColor = '#fff', cellSpacing = parseInt(currentStyle['border-spacing'])); /* угадайте кто?*/
}

Ну и пояснения: суть кода думаю ясна – вместо border-spacing, задать аналогичный cellspacing. Единственный (на мой взгляд) недостаток – считаю что border-spacing задан в px. Желающим поизвращаться поупражняться в переводе из других единиц – милости прошу.

Ну и вкратце о магический пассах, которые сплетены вокруг рабочего кода – они нужны для того чтобы expression выполнился ровно один раз (любопытным предлагаю заменить в вышепреведённом заклятье runtimeStyle… на alert(“Интересно как же часто я покажусь?”) ).

А за разъяснениями о runtimeStyle, currentStyle и разнице между ними отправляю к источнику сей мудрости – докладу о “тонком css” для IE с Client Side’2007.

Update: описанный хак нужен лишь в случае если border-spacing отличен от нуля, в противном случае используется border-collapse: collapse.

Update 20.03.2009 Почему перестало работать в IE8 ?

13.12.07  
MiRacLe
 |  ,  | RSS с комментариями  | trackback url
14.12.07 16:33 |  comment от GolDen

Интересно, а есть что-то подобное для Firefox и других браузеров, я имею ввиду возможность инкапсулировать javascript в css?

14.12.07 16:41 |  comment от MiRacLe

Аналогов expression нету.
Аналогом behavior в gecko является XBL.

Ну а вообще считаю это несерьёзным (в смысле пихать в css, служащим для оформления внешнего вида, какие бы то нибыло вычисляемые конструкции). А вот наоборот, с помощью javascript рулить css-ом, считаю идеологически более правильным и с успехом пользую для этого jQuery.

Есть возможность прокомментировать ситуацию

WP не сожрёт только эти тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>