BCAF: Финал — CSS тестове
BCAF
След като премина през неколкократно одобрение от българския и английския офис на фондцията, най-накрая дизайнът на сайта е официално приет и завършен.
За да избегна евентуални проблеми с чупенето на колони и размествания под различни браузъри за в бъдеще, реших да тествам с отделни CSS-и на Firefox 1.0 RC1, IE6 и Opera 7.54. Отворете и трите браузъра, за да видите как всеки изкривява CSS-а по свой си начин. За сравнение, това е картинка на оригиналния дизайн.
- 1. С какво разполагам
- Скица, скруктура и стилове.
- 2. По един CSS за всеки браузър
- Firefox — работи с оригиналния CSS. Съвсем коректно отработва всички отстъпи и float-и. Няма нужда от ексцесии като display:table.
- IE6 — не зачита отстъпите както трябва и не ги добавя към общия размер. Резултатът е, че изглежда ужасно на не-IE браузър.
- Opera — приема отстъпите сходно на IE. Сравнително далече от истината.
- 3. Изчистване на пречките. Един CSS за всички
- Firefox и IE6 — Навсякъде, където има padding и border в комбинация с width или height се заменя с алтернативи, например за ляв отстъп text-indent, а за border позиция на фона. Вертикалния отстъп се маха от обектите със зададена височина и се задава на под-обекта (например, го махам от UL и го добавям на LI).
- Firefox, IE6 и Opera — Opera счита, че всеки флоатнат обект, трябва да е 100% широк. Затова правя LI да бъдат display:inline.
- 4. Позацапвам малко, за да върви и на IE5
- За всички браузъри — IE5 не разбира метода за заместване на текст с картинка, когато искам конкретен обект да е rollover. За това, се налага да добавям метод за заместване, който IE5 разбира. От друга страна приема text-indent твърде буквално и го добавя към общата ширина, за което се налага да го замествам с padding-left, но така че другите да не го виждат.
Евгени, що го тормозиш в quirks mode? цапни му един пълен html 4.0 transitional doctype, ще си решиш проблемите с IE 6 за сгъването на marginите. Мисля, че и за Опера ще има значение, но това е само предположение. Тогава единственият проблем остава с IE 5, за който препоръчвам mid pass hack на тантек кибик, с него ще замацаш всичките проблеми под тая антика…
Аз точно от box model hack идвам, като го сложиш в началото на CSS-а понякога IE5 тотално отцепва и отказва да интерпретира някои от селекторите надолу от хака. Подчертавам - понякога. Не ми се иска да разследвам защо е така (предполагам има връзка с положението на луната и магнитните бури), затова изнасям всичките неща, които преди правех точно с този хак, в mid pass файла. Освен това имам и други проблеми (предимно с блокови Anchorи и разни мизерии с малките размери на шрифта) които също намират мястото си там.
Затова винаги след хака слагам нещо от рода:
.x {top: 0;}
и нямам грижи.
Той, човека добре е тествал, но кой да чете :) Промених DOCTYPE на последния HTML на “XHTML 1.0 Transitional” и положението се нормализира. За IE5 вече по навик му лепвам BoxModelHack. Няма оттърване там.