Поддержка Проблемы и решения Отдельный файл .css для любой версии браузера IE

  • Нужно чтобы если человек зайдёт с любой версии браузера internet explorer, сайт читал файл стилей например ie.css и игнорировал style.css и наоборот style.css только если это будут любые другие браузеры которые в свою очередь будут игнорировать ie.css
    Такое сейчас делается?
    Когда подключаю ie.css в functions.php то эти стили конечно начинают читать все браузеры сразу два файла стилей ie и style. Всякие условные комментарии типа <!—[if IE]> и всякие «хаки» у меня лично сейчас не работают.
    Я был уверен что можно это сделать прописав отдельно стили для IE и легко их подключить какой-нибудь функцией. Но сейчас не могу найти как это сделать и переделать всё «кроссбраузерно» тоже не смогу, а хотелось бы нормальной работы и с ie

    • Тема изменена 1 неделя, 6 дн. назад пользователем  3vgeny.
Просмотр 15 ответов — с 1 по 15 (всего 16)
  • с любой версии браузера internet explorer

    Эту хрень уже давно пора игнорировать и не устраивать ради неё танцы с бубном.

    Да, если решения не найду, то выведу сообщение с пояснениями и ссылками на норм браузеры. Или лучше тогда даже поставить заглушку


    выведу сообщение с пояснениями и ссылками на норм браузеры.

    IE это по сути труп. Но лично я до сих пор изредка встречаю отдельных индивидуумов, продолжающих насиловать этот труп. Поэтому это будет самое мудрое решение, за которое те самые индивидуумы быть может Вам спасибо скажут когда прозреют.

    выведу сообщение с пояснениями и ссылками на норм браузеры

    @3vgeny Готовое решение. Установить установил. Но проверить не могу! Поблизости нет ни одного компа с IE…. 🙁 Быть может вам пригодится

    https://ru.wordpress.org/plugins/ie-compatibility-mode-checker/

    Почему-то сходу не сработал. Попробую ещё. Но вообще в случае с сообщениями эта конструкция работает <!—[if lt IE 11]> …текст сообщения для браузеров версии 11 и ниже … <![endif]—>
    А при подключении файла .css нет. Видимо сами microsoft пофиксили что-то чтобы так нельзя было делать. Странные они и упрямые )

    Модератор SeVlad

    (@sevlad)

    wp.me/3YHjQ

    Эту хрень уже давно пора игнорировать

    Только если кому-то не нужны 7% юзеров.

    К тому же многое зависит от ЦА сайта. Напр в корп. секторе до сих пор XP с ИЕ6-8 во всю используется.

    Или даже 11:

    <!—[if lt IE 11]>

    Этого достаточно. Сюда и подключайте скрипты-стили для них.
    Хинт: можете скачать темы 5летней давности и посмотреть как там сделано.

    Только если кому-то не нужны 7%

    Данные несовсем корректны.
    По итогам 2018 года в России лидерство держит Гуглохром. За ним следует Яндекс браузер и с большим отрывом от них Фаерфокс, Опера и другие. IE на последнем месте с не более чем 3% поклонников. (и то это можно объяснить его навязываним в качестве предустановленного). Эти усредненные данные приведены на основе разных исследований популярности браузеров в России в 2018 году

    Модератор Yui

    (@fierevere)

    ゆい

    господа, не спорьте, у всех на сайтах своя статистика, которая от «средних» цифр может отличаться очень и очень разительно
    Смотрите ваши метрики или аналитику, или что у вас там, возможно удивитесь чему-нибудь такому

    Для IE 11 не работает у меня почему то <!—[if lt IE 11]>

    Но работает такое:
    в файле стилей:

    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .те же названия стилей которые надо изменить { но c другими параметрами для IE }
    }

    Пробовал для браузера IE 8 (какой оказался под рукой) в header.php после <head> <!—[if lt IE 10]> и подключить отдельный файл стилей ie.css <link rel=»stylesheet» href=»ie.css»> и по всякому но не работает почему то. Какой-то js пробовал тоже не получилось и в итоге совсем запутался.

    Да, основная причина почему я бы хотел чтобы была совместимость с IE это то что есть много организаций где старенькие компьютеры и старенькое ПО. Если всё же не получится сделать стили для старых IE то пожалуй оставлю доступ к сайту, просто сверху выведу крупное сообщение с пояснениями и ссылками. В IE 8 не так уж прямо сильно коряво всё, терпимо. В 5,6 даже страшно пробовать )

    Модератор Юрий

    (@yube)

    Для IE 11 не работает у меня почему то <!—[if lt IE 11]>

    Может, потому, что «lt» означает «меньше»?

    Матчать: http://htmlbook.ru/samlayout/internet-explorer/uslovnye-kommentarii

    • Ответ изменён 1 неделя, 5 дн. назад пользователем  Юрий.

    Вроде это должно означать что 11 версия включительно и все что ниже. Но я пробовал и без lt и вообще всякие варианты и цифр и без цифр и по разному ! с дефисами и т.д. Вроде пишут что майкрософт пофиксили эту тему с условными комментариями начиная с 10 версии.
    Для 8 версии работает для 11 тоже самое нет.
    Да и бог с ним, для 10,11 версии решение нашлось, сейчас буду пробовать что нибудь ещё для более старых версий (кроме как подключение скриптов и отдельных файлов стилей через <!—[if IE>) ибо через это у меня получается только выводить сообщения, ссылки и тд. но не подключать файлы стилей, не знаю почему и что не правильно делаю. Или это уже не работает в 2019

    Модератор Юрий

    (@yube)

    Вроде это должно означать что 11 версия включительно и все что ниже.

    С какой радости? Всю жизнь было lt строго меньше, lte меньше или равно.

    Да вы правы. Только без разницы что lt что lte
    <!—[if lte IE 11]> … <![endif]—> ничего не меняет в ie 11 даже сообщение не выводит никакого

    Модератор Юрий

    (@yube)

    Извините, проверить не могу за неимением IE как такового.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Для IE 11 не работает у меня почему то <!--[if lt IE 11]>

    Да, в IE 10 и 11 поддержку условных комментариев убрали:

    As of Internet Explorer 10, conditional comments are no longer supported by standards mode. Use feature detection to provide effective fallback strategies for website features that aren’t supported by the browser.

    Для IE 9 и ниже должно работать.

    Пробовал для браузера IE 8 (какой оказался под рукой) в header.php после <head> <!--if lt IE 10]> и подключить отдельный файл стилей ie.css <link rel="stylesheet" href="ie.css"> и по всякому но не работает почему то.

    Было бы здорово взглянуть на сайт. Предполагаю, что неверно указан путь к файлу.

    Или это уже не работает в 2019

    Чтобы отключить поддержку условных комментариев в старых версиях IE, Microsoft пришлось бы выпускать для них обновления. Таких обновлений не было, да и какой в них смысл?

Просмотр 15 ответов — с 1 по 15 (всего 16)