x

Einloggen

Hast du noch keinen Account? Jetzt registrieren!

CSS хакі

Original on www.webdevout.net
Пераклад на беларускую мову Patricia Clausnitzer


Праца з браўзарам неадпаведнасці часцяком складае вялікую частку працы для вэб-дызайнера. Часам няма ніякага разумнага шляху для дасягнення жаданага макет ва ўсіх асноўных вэб-браўзараў без выкарыстання адмысловых правіл выключэння для некаторых рухавікоў макета. Хакі абавязкова прывядзе да магчымыя ўскладненні і іх варта пазбягаць усімі магчымымі спосабамі, але, калі таго патрабуюць акалічнасці хакі, якія будуць выкарыстоўвацца, лепш ведаць, што вашы варыянты і ўзважыць наступствы належным чынам. Мэтай дадзенага артыкула з'яўляецца апісанне некаторых хакі CSS, якая таксама завецца CSS фільтраў, з найменш значныя патэнцыйныя наступства.

Змест




  1. Умоўныя каментары
    1. Сінтаксіс
    2. Крапежныя аўтаномнай версіі Internet Explorer
    3. Умоўныя каментары, як узламаць CSS
  2. У CSS-хакі
    1. Easy селектараў
    2. Згорнутым селектары атрыбутаў
    3. !important
    4. @import "non-ie.css" all;
    5. body[class|="page-body"]



  3. Нерэкамендаваныя хакі

    1. _property: value and -property: value
    2. *property: value
    3. body:empty
    4. a:link:visited, a:visited:link
    5. >body
    6. html*
    7. !ie
    8. !important!



Умоўныя каментары



З-за адносна нізкі ўзровень падтрымкі стандартаў, Internet Explorer, як правіла, прадметам самых хакі CSS. Да шчасця, пачынальна з версіі 5, свядома падтрымлівае досыць бяспечным для выкарыстання секчы званыя "умоўныя каментары". Умоўныя каментары адмыслова пабудаваных HTML каментары, якія Internet Explorer у Windows можа разглядаць інакш, чым іншыя браўзары, заснаваныя на жаданні нумар версіі IE. Яны могуць прыводзіць да Internet Explorer ігнараваць разметку паміж каментары ці ўключыць частку каментароў, як быццам гэта звычайны разметкі. Умоўныя каментары ўжываюцца адмыслова для браўзараў, якія выкарыстоўваюць Trident макет Internet Explorer, рухавік, сэнс IE браўзараў, заснаваных, як Maxthon і Avant зладзіцца з імі, як Internet Explorer робіць той час браўзараў, што выкарыстоўваюць іншыя рухавікі макет убачыць іх проста як звычайныя каментары. Internet Explorer на Mac выкарыстоўвае розныя размяшчэнне рухавіка і не падтрымлівае ўмоўныя каментары.

Самы выгодны аспект умоўных каментароў, што вы не належыце на браўзар памылак пры іх выкарыстанні. Пры выкарыстанні CSS хакі, якія належаць на браўзар памылак, вы сапхняцеся з магчымасцю гэтых памылак фіксаваных на непажаданыя часу ці іншых браўзарах, выявіўшы такую ж памылак. Умоўныя каментары працуюць толькі ў браўзарах, якія непасрэдна падтрымліваюць іх і сцвярджаюць, што на аснове Internet Explorer, які ў дадзеным выпадку ўсе вядомыя браўзары сумленна.

Ёсць дзве формы ўмоўных каментароў: пазітыўныя і негатыўныя. Дадатны ўмоўны каментар будзе падвяргаць уключыць разметку толькі для браўзараў, якія адпавядаюць умове (маецца на ўвазе толькі абраныя версіі Internet Explorer). Адмоўны ўмоўны каментар будзе падвяргаць разметка на вэб-браўзары, якія не адпавядаюць умове (г.зн. усё не-IE вэб-браўзараў і любой версіі IE, што ўмовы не адпавядаюць). Заўважым, што паколькі версій IE старэй 5 IE не падтрымлівае ўмоўныя каментары, вы можаце атрымаць нечаканыя вынікі ў гэтых браўзарах.



Сінтаксіс



Сінтаксіс умоўных каментароў выглядае наступным чынам:

Дадатны

<!--[if condition]> HTML <![endif]-->

Адмоўны

<!--[if !condition]><![IGNORE[--><![IGNORE[]]> HTML <!--<![endif]-->

умова з'яўляецца адным з наступных дзеянняў:

IE
Любая версія IE
lt IE version
Версіі менш, чым версія
lte IE version
Версіі менш ці роўная версія
IE version
Толькі версія
gte IE version
Версіі больш ці роўная версія
gt IE version
Версіі больш, чым версія

версія версія Internet Explorer, як правіла, 5 , 5.5 , 6 ці 7

HTML з'яўляецца HTML, якія будуць уключаны, калі ўмовы ці не адпавядае, у залежнасці ад тыпу ўмоўных каментароў. Калі ўключаны, HTML знаходзіцца менавіта там, дзе ўмоўны каментар у крыніцы.

Пры адмоўных умоў, <![IGNORE[--> <![IGNORE[]]> можа быць заменены --> , калі умова проста IE . Даўжэйшая версія, патрабуецца толькі, калі Internet Explorer можа аналізаваць змесціва.

<![IGNORE[ ... ]]> дырэктыва не даступная ў XML, так што гэта незаконна выкарыстоўваць яго ў XHTML. Рашэннем было б падзяліць яго на два адмысловых умоўных каментароў: <!--[if ! condition ]> XHTML <![endif]--> <!--[if !IE]>--> XHTML <!--<![endif]--> XHTML, дзе тая ж абаіх месцах. Звернеце ўвагу, што Internet Explorer 7 і ніжэй дагэтуль не прызнаюць, XHTML як форма XML, так што гэта толькі на перспектыву.

Каб звесці да мінімуму верагоднасць Вашага сайта парыў у будучых версіях Internet Explorer, чытаць Падрыхтоўка сайта для IE.next .



Крапежныя аўтаномнай версіі Internet Explorer



Internet Explorer не прызначана, каб некалькі версій для ўсталёўкі на адзін раз, і Microsoft афіцыйна не падтрымлівае такія канфігурацыі. Калі вы выкарыстоўваеце адзін з узламаных трэці пакет удзельніка, які спрабуе зрабіць гэта, вы будзеце выпрабоўваць праблем з пэўнай версіі ўмоўных каментароў, сярод іншых рэчаў. Гэта таму, што розныя аўтаномныя копіі па-ранейшаму належыць на агульныя цэнтралізаванага рэестру для некаторых дадзеных, уключаючы інфармацыю пра версію.

Хоць не існуе просты спосаб прабіцца праз усе гэтыя пытанні з аўтаномнымі версіі Internet Explorer, то можна прымусіць іх шукаць у іншым месцы за інфармацыю пра версію, такім чынам, каб ухіліць гэту праблему з умоўных каментароў. Хітрасць складаецца ў тым, каб выдаліць індыкатар звычайнай цэнтралізаванай версіі. Для гэтага, па-першае адкрыць regedit.exe з "Run ..." дыялогавае акно. Перайдзіце ў HKEY_LOCAL_MACHINE/Software/Microsoft/Internet Explorer/Version Vector/ (Калі HKEY_LOCAL_MACHINE не існуе, паспрабуйце HKLM замест). У правай частцы акна вы ўбачыце радок з імем значэнне IE . Пераназваць гэта, націснуўшы на яго, і змяніць яго, каб zIE (ці штосьці ўнікальнае і розныя). Перазапусціце Internet Explorer, каб убачыць вынікі. Зараз, калі ён шукае IE ключ для яе версію, ключ будзе бракаваць, і ён будзе змушаны вызначыць правільны нумар версіі з уласнага модуля.

Аўтаномныя версіі Internet Explorer ёсць шэраг іншых пытанняў, і таму можа быць, лепш замест гэтага выкарыстоўваць асобную віртуальную машыну для кожнай версіі Internet Explorer, каб забяспечыць тое, што вы бачыце, што вашы карыстачы будуць бачыць. Я рэкамендую, VMware Server, які з'яўляецца цалкам бясплатным і досыць простыя ў наладзе.



Умоўныя каментары, як узламаць CSS



Умоўныя каментары могуць быць скарыстаны як CSS узламаць шляхам уключэння спасылкі на табліцы стыляў на аснове рухавічок. Вось прыклад таго, як табліцы стыляў могуць быць падзелены наступным чынам:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<title>Test</title>
<link href="all_browsers.css" rel="stylesheet" type="text/css">
<!--[if IE]> <link href="ie_only.css" rel="stylesheet" type="text/css"> <![endif]-->
<!--[if lt IE 7]> <link href="ie_6_and_below.css" rel="stylesheet" type="text/css"> <![endif]-->
<!--[if !lt IE 7]><![IGNORE[--><![IGNORE[]]> <link href="recent.css" rel="stylesheet" type="text/css">
<!--<![endif]-->
<!--[if !IE]>--> <link href="not_ie.css" rel="stylesheet" type="text/css"> <!--<![endif]-->
</head>
<body>
<p>Test</p>
</body>
</html>

У прыведзеным вышэй прыкладзе, all_browsers.css распаўсюджваецца на ўсіх браўзарах, ie_only.css ужываецца толькі ў стаўленні ўсіх версій Internet Explorer, ie_6_and_below.css распаўсюджваецца на ўсе версіі Internet Explorer ніжэй IE 7, recent.css распаўсюджваецца на ўсіх браўзарах, акрамя IE версій ніжэй 7 і not_ie.css ставіцца да ўсіх, не-IE браўзарах.

Гл. таксама: MSDN: Пра Ўмоўныя каментары

In-CSS-хакі



Адным з недахопаў умоўных каментароў, што яны патрабуюць змен у зыходны код HTML. Нажаль, няма эквівалента ўмоўных каментароў у CSS. Замест гэтага, калі вы павінны выкарыстоўваць In-CSS-хакі, неабходна выкарыстоўваць іншыя значна меней надзейнымі, часта злучаныя з эксплуатацыяй браўзары памылкі.



Лёгкія селектары



Большасць у CSS-хакі справа з селектарам памылак. Ніжэй даецца спіс версію браўзара дыяпазонаў і пачаткі селектараў, якія вядомыя для выбару элементаў у іх. Звернеце ўвагу, што, паколькі гэтыя хакі належыць на браўзар памылак ці адсутных магчымасцях, вынікі могуць адрознівацца ў некаторых меней вядомых ці будучых браўзарах. Усе гэтыя селектары выкарыстоўваць сапраўдны CSS.

IE 6 і ніжэй
* html {}
IE 7 і ніжэй
*:first-child+html {} * html {}
IE 7 толькі
*:first-child+html {}
IE 7 і сучасных браўзэраў
html>body {}
Сучасныя браўзары (хоць і не IE 7)
html> /* */ body {}
Апошнія версіі Opera 9 і ніжэй
html:first-child {}

Звернеце ўвагу, што секчы для IE 7 і ніжэй насамрэч два асобных селектараў: адзін для IE 7, і адзін для IE 6 і ніжэй. Астатнія жаданага выбару павінны быць дададзены да абедзвюх частак секчы. 2 часці не могуць быць аб'яднаны з коскі, таму што IE 6 і ніжэй не зможа правільна прааналізаваць выбару і не будуць атакаваны.

Некаторыя з гэтых селектараў патрабуюць, каб дакумент тыпу дакумента, але не інструкцыі па апрацоўцы (у тым ліку XML дэкларацыі). Гэта ідэальнае рашэнне для прадухілення ўсталёўкі IE 6 удаючыся ў рэжыме сумяшчальнасці ў любым выпадку.

Селектары вышэй будзе абраць html ці body элемента. Гэта павінна быць скарыстана як напачатку вашага поўнага выбару. Напрыклад, калі жаданы селектар #foo .bar , і вы жадаеце яго выкарыстоўваць толькі для IE 7, у выніку вашага выбару будзе *:first-child+html #foo .bar .

Увага: У сувязі з характарам оперы пэўных селектары і Internet Explorer 7 у няправільным звароце :first-child , вельмі магчыма, што html:first-child выбару могуць таксама абраць у будучай версіі Internet Explorer, так што будзьце асцярожныя пры яе выкарыстанні. Гэты селектар таксама абапіраецца на памылку, таму ён можа быць выпраўлена ў наступнай версіі оперы. Гэта старонка таксама апісвае альтэрнатыўны метад, які ўяўляе сабою праблему для рэалізацыі, але можа быць некалькі больш надзейным улічваючы верагодныя прыярытэты памылка фіксацыі.



Згорнутым селектары атрыбутаў



Гэтыя хакі на аснове адрозненняў у звароце з атрыбутамі ў згорнутым выглядзе. Калі тэг напісана <input disabled> , input[disabled="disabled"] {} павінны абраць яго. Аднак большасць браўзараў атрымаць гэта няправільна і па-рознаму.


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<title>Test</title>
</head>
<body>
<input type="hidden" disabled id="attrhack">
<p>Test</p>
</body>
</html>

Па паказаных вышэй разметкі, тут селектары розных браўзараў прызнаць абраць p элемент:

#attrhack[disabled=""]+p {}
Firefox 1.5 і ніжэй, магчыма, будучыя версіі
Safari 2.0 і ніжэй, магчыма, будучыя версіі
Konqueror 3,5 і ніжэй, магчыма, будучыя версіі
#attrhack[disabled="true"]+p {}
Opera 9 і ніжэй, магчыма, будучыя версіі

Звернеце ўвагу, што ніводны з гэтых выбірае Internet Explorer 7. Хоць ён падтрымлівае селектары атрыбутаў і прылеглых брат камбінатараў, гэта не падобна, прызнаюць значэнне радка атрыбутаў у згорнутым выглядзе.

Нататка: згорнутыя формы атрыбут дапушчаецца ў HTML, але не ў XHTML. Гэты хак не будзе працаваць у XHTML дакументах.



!important



Internet Explorer 6 і ніжэй былі праблемы з !important ідэнтыфікатар, які выклікала яго ігнараваць, калі іншая заява таго ж маёмасці з'явіліся пазней у тым жа блоку дэкларацыі стылі. Гэта можа быць скарыстана, каб карміць Internet Explorer 6 і ніжэй адмысловых маёмасных каштоўнасцяў, якія ігнаруюцца іншымі браўзарамі. Internet Explorer 7 ухілілі гэту праблему.

Вось прыклад гэтага метаду ў выкарыстанні:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<title>Test</title>
<style type="text/css">

p
{
background: green !important; /* Major browsers other than IE 6 and below respect the
importance immediately */

background: red; /* IE 6 and below use this value instead, even though the
above was marked as important */

}
</style>
</head>
<body class="page-body">
<p>Test</p>
</body>
</html>

@import "non-ie.css" all;



Internet Explorer 7 і ніжэй не падтрымліваюць СМІ селектараў на @import кіравала, а не ігнаруючы ўсе нормы, калі яны прысутнічаюць. Такім чынам, можна стварыць цэлую табліцу стыляў для не-IE браўзарах, і імпартаваць яго ў асноўнай стыляў, дадаўшы @import "non-ie.css" all; .

Будучыя версіі Internet Explorer могуць падтрымліваць @import правіла карэктна.

@import "stylesheet.css" all;імпарту стыляў ва усіх браўзарах, акрамя IE 7 і ніжэй. Ён можа ці не можа працаваць у будучых версіях IE.



body[class|="page-body"]



CSS 2.1 спецыфікацыі не ясна, пра тое ці не злучок могуць быць уключаны ў кошт злучок падзеленых селектар атрыбутаў. Большасць браўзараў, уключаючы Firefox і Internet Explorer 7, дазвольце body[class|="page-body"] селектар элемента, які адкрывае тэга выглядае наступным чынам: <body class="page-body">. Тым не менш, опера інтэрпрэтуе спецыфікацыю па-рознаму ў гэтым стаўленні. Ён распадаецца на значэнне атрыбуту злучком і правярае толькі першую частку ў параўнанні з коштам селектар атрыбуту. Відавочна, што калі атрыбут падзяліць злучком, першая частка не будзе мець ніякіх пераносаў у ім, так Опера разглядае гэты селектар як не супадаюць. Таму, калі ўласны клас ужываецца для body элемент, гэты селектар матчы Internet Explorer 7 і большасць сучасных браўзараў, акрамя оперы. Опера можа змяніць свае паводзіны, каб адпавядаць іншых браўзарах, у будучыні, але гэты метад, як вядома, праца для Opera 8 і 9.

Вось прыклад гэтага метаду ў выкарыстанні:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<title>Test</title>
<style type="text/css">

p
{
background: red; /* Applies to all major browsers */
}

body[class|="page-body"] p
{
background: green; /* Applies to IE 7 and most modern browsers except Opera */
}
</style>
</head>
<body class="page-body">
<p>Test</p>
</body>
</html>

body[class|="page-body"] {} выбірае body элемента з класам page-body у IE 7 і ўсе сучасныя браўзары, акрамя Opera 9 і ніжэй. Ён можа ці не можа працаваць у будучых версіях.


Нерэкамендованыя хакі



Калі вы збіраецеся выкарыстоўваць хакі, вышэй метады рэкамендуемых варыянтаў. Тым не менш, было б цікава адзначыць наступнае unrecommended хакі. Некаторыя з іх абапіраюцца на несапраўдным CSS ці больш нязграбным, чым вышэй варыянтаў.



_property: значэнне і ўласцівасць: значэнне



З-за памылкі разбору, Internet Explorer 6 і ніжэй не прамінуць на маёмасць, якое было пачынацца з алфавітна-лічбавыя знакі. Прэфіксаванае звычайнае імя ўласнасці _ ці - прывядзе да ўласнасці, якія павінны ўжывацца для Internet Explorer 6 і ніжэй, але як правіла, не ў іншых браўзарах. Internet Explorer 7 была гэта памылка выпраўлена.

Спецыфікацыя CSS дазваляе браўзарам выкарыстоўваць падкрэсленне ( _ ) ці працяжнік ( - ) у якасці прэфікса для пэўнага вытворцы імя ўласцівасці з гарантыяй таго, што такія ўласцівасці, ніколі не будзе выкарыстоўвацца ў будучыні CSS стандартам. З-за гэтага гарантаваць, гэтыя два знака прэфікса ідэальным варыянтаў для гэтага секчы.

Хоць спецыфікацыі CSS вызначае гэты пэўнага вытворцу ўласнасці сінтаксіс, уласцівасці сваёй прыродзе не з'яўляецца часткай якой-небудзь W3C CSS-ухваліла профіля і, такім чынам, несапраўднымі, калі правяраюцца на адзін. Па гэтым чынніку, а таму, што часта прымальнай альтэрнатывай, гэта абыходнае нерекоммендованное.

_property: value і -property: value ужыць кошты маёмасці ў IE 6 і ніжэй. Папярэджанне: гэты Лішнія CSS.



*property: value



Although Internet Explorer 7 corrected its behavior when a property name is prefixed with an underscore or a hyphen, other non-alphanumeric character prefixes are treated as they were in IE6. Therefore, if you add a non-alphanumeric character such as an asterisk (*) immediately before a property name, the property will be applied in IE and not in other browsers. Unlike with the hyphen and underscore method, the CSS specification makes no reservations for the asterisk as a prefix, so use of this hack could result in unexpected behavior as the CSS specifications evolve.

*property: value ставіцца кошты маёмасці ў IE 7 і ніжэй. Ён можа ці не можа працаваць у будучых версіях. Папярэджанне: гэты Лішнія CSS.



body:empty



:empty псеўда-класы прапануецца CSS 3 і павінны абраць элемент, які не ўтрымоўвае элементаў ці тэкст усярэдзіне яго. Тым не менш, пры выкарыстанні на body элемента, Firefox 1.5 і 2.0 (і адпаведнай версіі іншых Gecko-браўзэры) заўсёды абярыце яго нават тады, калі цела мае ўтрыманне (а ён павінен заўсёды).

Хоць гэта секчы, як чакаецца, будуць сапраўдныя ў CSS 3, яна яшчэ не дасягнула W3C Рэкамендацыя статут і з'яўляецца несапраўдным CSS 2.x, так што ў наш час не рэкамендуецца выкарыстоўваць гэты секчы. Тым не менш, гэта, мабыць, лепшы спосаб вылучыць апошніх версіях Firefox.

body:empty {} выбірае толькі элемент body у Firefox 1.5 and 2.0. Ён можа ці не можа працаваць у будучых версіях. Папярэджанне: гэты Лішнія CSS 2.x, але валідны CSS 3 у адпаведнасці з апошнімі праектамі.



a:link:visited, a:visited:link



У адпаведнасці са стандартам CSS, :link і :visited дзяржаў спасылку з'яўляюцца ўзаемавыключальнымі: :link насамрэч азначае "наведанай спасылкі". Тым не менш, IE 7 і ніжэй будзе ігнараваць адзін з гэтых псеўда-класы, калі іншая з'яўляецца пазней у тым жа просты селектар.

Калі ў вас ёсць тэгі <a href="foo.html" id="linkhack"> , або #linkhack:link:visited {} ці #linkhack:visited:link {} будзе абраць элемент у IE 7 і ніжэй. 2 селектары могуць быць аб'яднаны для адной дэкларацыі блок: #linkhack:link:visited, #linkhack:visited:link {} . У IE 7, вы можаце таксама выкарыстоўваць прылеглыя брат камбінатар ( + ) для выбару іншых элементаў зблізку спасылку.

Пры гэтым выкарыстоўваецца зусім сапраўдны CSS, але гэты метад з'яўляецца меней практычным, чым некаторыя з гэтых метадаў, і таму не рэкамендуецца.

a:link:visited, a:visited:link {} выбірае элемент у IE 7 і ніжэй. a Ён можа ці не можа працаваць у будучых версіях.



> body



Калі просты селектара адсутнічае па абодва бакі ад дзіцяці камбінатар ( > ), Internet Explorer 7, хібна мяркуе, што якія згінулі без весткі просты селектар універсальны селектар. Так >body тлумачыцца як IE7 *>body , а астатнія браўзары ігнаруюць яго, таму што гэта разбор памылак. Сапраўды гэтак жа ставіцца да IE7 >> як *>*>* .

IE7 мае той жа бзік з іншымі камбінатары. +p разглядаецца як *+p і ~p звяртаюцца, як *~p . (Нататка: ~ камбінатар з'яўляецца хуткіх CSS 3 функцыі і несапраўдная CSS 2.1.)

>body {} выбірае элемент цела ў IE 7 толькі. Ён можа ці не можа працаваць у будучых версіях. Папярэджанне: гэты Лішнія CSS!



HTML *



Internet Explorer 7 усталяваў дзівацтва, што дазволіла ўніверсальны селектар ( * ), каб абраць некалькі няісных бацькоў html элементаў, але ёсць іншае пытанне, што яны не выправіць: Калі ўніверсальны селектар, непасрэдна прылеглых да іншай простай селектар без прабелу паміж , Internet Explorer 7 мяркуе прасторы існуе. Гэта азначае, што html* тлумачыцца як IE7 html * , а астатнія браўзары ігнаруюць яго, таму што гэта разбор памылак. Акрамя таго, IE7 апрацоўвае ** , як * * .

html* {} выбірае ўсе нашчадкі html элементаў у IE 7 і ніжэй. Ён можа ці не можа працаваць у будучых версіях. Папярэджанне: гэты Лішнія CSS!



!ie



Internet Explorer 7 фіксаванай адзін з пытанняў, !important ідэнтыфікатарам, але яна ўсё яшчэ мае праблемы, калі ідэнтыфікатар мае памылкі ў ім. Калі недапушчальнае імя ідэнтыфікатара выкарыстоўваецца замест important , Internet Explorer 7 і ніжэй будзе апрацоўваць уласнасці звычайна, а не недахоп. Такім чынам, у любым стылі блок заява, вы можаце ўключыць уласцівасцямі, прызначанымі толькі дастасаваць да Internet Explorer і дадаць !ie ідэнтыфікатар. Практычна любое слова можа быць скарыстана замест ie .

!ie ідэнтыфікатар дазваляе ўласнасці, якія павінны ўжывацца ў IE 7 і ніжэй. Ён можа ці не можа працаваць у будучых версіях. Папярэджанне: гэты Лішнія CSS!



!important!



Іншая праблема !important ідэнтыфікатар, які не зафіксаваны ў IE 7 з'яўляецца лячэнне не літарна-лічбавых знакаў пасля ідэнтыфікатара. Як правіла, гэта павінна выклікаць уласнасці на правал, але Internet Explorer 7 і ніжэй ігнараваць дадатковыя знакі прыпынку і ўжываць уласнасці як калі б ён толькі што !important ідэнтыфікатар.

!important! ідэнтыфікатар дазваляе ўласнасці, якія павінны ўжывацца з важнасцю ў IE 7 і ніжэй і маёмасці не ўжываецца ў іншых браўзарах. Ён можа ці не можа працаваць у будучых версіях. Папярэджанне: гэты Лішнія CSS!