Что бросает Internet Explorer в режим причуд?

17

Я создал веб-страницу ( Ссылка ), которая была правильно отображена в firefox, chrome и т. д. Конечно, тупые IE сложные вещи, потому что он автоматически переходит в режим quirk, даже если doctype установлен правильно, а сайт проходит через w3 validation ( есть одна ошибка отсутствия некоторого символа, но файл был очищен в шестнадцатеричном редакторе). Как я могу остановить, т. Е. От входа в режим quirks? Есть ли способ?

    
задан mat_o 16.10.2010 в 19:25
источник

4 ответа

26

Попробуйте убить все пробелы перед DOCTYPE.

EDIT: в начале файла есть символ <feff> , который является подписью спецификации Юникода. Поскольку у вас может не быть текстового редактора, который действительно может это увидеть, попробуйте удалить всю первую строку и вставить ее с помощью

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

И НЕ сохраняйте файл с подписью Unicode спецификации. Если это не сработает, попробуйте другой текстовый редактор.

    
ответ дан meder omuraliev 16.10.2010 в 19:26
источник
7

Вставьте указанный ниже код в тег заголовка

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    
ответ дан Pugazh 11.01.2013 в 10:05
источник
6

Режим Quirks в любой версии IE также будет запущен, если что-либо предшествует DOCTYPE. Например, если гипертекстовый документ содержит комментарий, пробел или любой тег перед объявлением DOCTYPE, IE будет использовать режим quirks:

<!-- This comment will put IE 6, 7, 8, and 9 in quirks mode -->
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    
ответ дан Amr 08.02.2013 в 00:42
источник
3

Я добавил как doctype с первого комментария, а затем метатег, и он работал благодаря ребятам .... и не благодаря IE :(

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

и

    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

Я только что изменил doctype на html5, и он все еще отлично работает

 <!DOCTYPE html> 
    <html>
      <head> 
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    
ответ дан Jon 04.02.2013 в 15:33
источник