Режим сумісності

Влад Мержевич

Режим совместимості призначений для відображення веб-сторінки, схожеї на старі браузери. У цьому режимі ігноруються стандарти HTML і CSS, тому поведінка браузерів стає непередбачуваною. Для перемикання в режим совместимості існує багато доктайпів, ось лише деякі з них.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">

Також перехід відбувається, якщо доктайп взагалі не вказаний або не може бути розпізнаний.

Хоча браузери по-різному інтерпретують код документа в режимі совместимості, деяка поведінка у них співпадає.

Висота таблиці і рядка

Можна вказати висоту таблиці або рядка (тег <tr>) у відсотках, пікселях або інших одиницях. В стандартному режимі атрибут height у тега <table> і <tr> ігнорується.

Імена ідентифікаторів і класів починаються з цифри

У браузері IE і Opera імена класів і ідентифікаторів можна починати з цифри. В інших браузерах і в стандартному режимі такі імена неприпустимі.

Не чутливість до регістру

Імена ідентифікаторів і класів не залежать від регістру написання, імена mydiv і MyDiv вважаються однаковими.

Кольори

Колір у шістнадцятковому значенні можна вказувати без символа решітки перед (fc0 замість #fc0). В стандартному режимі такі кольори ігноруються.

Пікселі за замовчуванням

Якщо в стилях як одиниця розміру вказано число без одиниці вимірювання, вважається, що значення задане в пікселях. В стандартному режимі такі значення ігноруються.

Пробіл після значення в CSS

У стилях можна ставити пробіл перед одиницею виміру (10 px, а не 10px). В стандартному режимі такі значення ігноруються.

margin: auto не працює в IE

Для блоків з вказаною шириною margin зі значенням auto не вирівнює блок по центру в браузері IE.

Ширина блоку

Ширина блоку дорівнює значенню width. Відступи (padding) і межі (border) не впливають на ширину і знаходяться всередині блоку.

Висота блоку

Вказана висота блоку ігнорується, коли висота контенту перевищує вказану висоту блоку, яка при цьому збільшується згідно висоти контенту.

Тут перераховано не всі проблеми, що виникають в режимі сумісності, але цього досить, щоб зробити висновок, що цей режим використовувати не варто.

Часті запитання