Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2009-08-29

CSS hack and IE8

Столкнулся с неприятной штукой - оформление сайта в IE8 разлезается. Потратил несколько часов на выяснение причин и поиск средства от блох.

Докладываю: причина в том, что мелкомягкие приняли решение не реагировать на фокусы (фильтры) в CSS, которые приводили к тому, что некоторые инструкции воспринимались только IE. 6 и 7 версии реагируют на эти фокусы, на которых и построено большинство хаков. А 8-ка уже не реагирует (в предыдущем посте были сцылки на нужные статьи).
А ведь благодаря этим, наработанным потом и кровью хакам, сайты выглядят одинаково в разных браузерах.

Что делать? Вешаться. Потому как придется кое-что переписать, для корректной раскладки сайта в 8-ке.

Конкретно мне помогло уточнение условия в месте подключения хаков. Ранее там была проверка на "просто IE", а я сделал проверку на IE с версией менее 8.
Типа так:
<!--[if lt IE 8]>
<style type="text/css"
media="all">@import url(ie6.css);</style>
<![endif]-->

Еще можно применить рекомендуемый микрософтом метатег, типа такого:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">

для имитации восьмеркой браузера какбе IE7. Удивительно, но этот тег вставлять надо сразу после тега
<html>
а не после тега
<head>
Но мне этот способ не нравится, это накрайняк.

Ну и до кучи надо бы доктайп определить:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Или другой, какой у вас там подготовлен.

Короче, жизнь веб-верстальщика с выходом ie8 опять усложнилась. Теперь не все "интернетиспортилы" понимают написанные для них хаки.


Сцылки дня:

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) Java (22) humor (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Manager (15) web-browser (15) Никонов (15) Klaipeda (14) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) serialization (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)