За css хаковете

Наскоро обсъждахме как може да се преодолеят разни различия в различните браузъри без да се вадят отделни файлове със стилове.
Принципно не съм привърженик на хаковете, но понякога се налага да се ползва някой друг хак по някаква причина.
Затова реших да извадя някои хакове.
Ето тук са извадени няколко типа хакове, които влияят на различните браузъри

#example {
	color:black; /* mozilla, opera, safari i chrome */
	color: blue\9; /* ie 8 */
	*color:orange; /* ie 6 ie 7*/
        #color:orange; //for IE7
 
	_color: green; /* ie 6 */
}

Вижда се че 1-вия ред е за браузърите различни от IE.
След това е редът за IE8, тук си позволих да направя няколко опита, тъй като в нета четох че и това

color: blue;\ /* ie 8 */

било за IE8, но когато се напише така другите браузъри също го четат. Освен това опитах неща от сорта на

color: blue\1; /* ie 8 */
color: blue\x; /* ie 8 */

И всякакви от сорта, но.. установих че работи само с \9. Интересно нали 🙂
3-тият ред е за IE6 и IE7, но ако напишете 4-тия ред, IE6 ще вземе него под внимание.

Подредбата тук е важна.
Напр. ако се напише така

#example {
	color: blue\9; /* ie 8 */
	color:black; /* ff */
	*color:orange; /* ie 6 ie 7*/
        _color: green; /* ie 6 */
}

mozilla, opera, safari, chrome, IE8 ще покажат текста черен.

Kогато говорим за IE8 се оказа че има и 2-ри начин да го накараме да покаже нещо по определен начин.

Слагаме текста в елемент с клас test, затова пишем

#example .test{
	font-size: 13px;
}

но за IE8 се пише допълнително това:

#example .test, #ie8#fix{
	font-size: 20px;
}

оказа се че когато види #ie8#fix, IE8 смята това за невалиден селектор, поради което спира да чете всичко след него.
Просто игнорирал съдържанието в скобите.

Ето и демо

октомври 15th, 2009 at 1:56 pm

Хубава статия, определено може да бъде полезна! Съгласен съм с автора, че не е желателно да се ползват хакове, целта ни винаги трябва да е да пишем правилен семантичен код, който се валидира според http://validator.w3.org

Е да, ама ина ситуации, в които заобикалянето на определена „кофти ситуация“ според всички изисквания и правила би коствала прекалено много времеви ресурс, което нем исля, че трябва да става на всяка цена. Ето в такива случаи са добре дошли хаковете 😉

Оставете коментар

Design To HTML от Стайл нет