Содержание

Кроссбраузерная вёрстка / Хабр


Что такое кроссбраузерная вёрстка? Какие есть браузеры и нужен ли пиксель-пёрфект?

Если собрать охапку современных браузеров, то разложить её можно по-разному: по устройствам, по платформам, по типу работы, да хоть по цвету иконок. Самое полезное для разработчика — уметь разложить их по движкам. Именно движок, то есть самое ядро браузера, определяет как он работает с вашей вёрсткой.

При всём разнообразии браузеров, независимых движков довольно мало, а новые появляются очень редко. Так что вместо десятков браузеров вам нужно поддерживать не больше пяти независимых движков. А ещё бывает, что браузеры с одним названием используют разные движки на разных платформах! В общем, всё очень сложно и интересно.

Самый популярный в мире браузерный движок — это Blink. Его использует Chrome и браузеры на его основе: Opera, Samsung Internet, Яндекс.Браузер и другие. Для работы с JavaScript, эти браузеры используют движок V8 — тот же, что и в Node. js. Один из главных разработчиков открытого движка Blink — Google, но в разработке активно участвует не меньше десятка компаний.

WebKit, другой популярный движок, очень похож на Blink. А вообще, наоборот — это Blink похож на WebKit. Это как? В 2013 году Blink форкнули из WebKit. По сути, скопировали. Google собрала вещи и сказала Apple, основному разработчику WebKit, что ей не нравятся её методы работы и теперь всё будет по-другому. Что поделать, опенсорс. И действительно, стало по-другому: основа у WebKit и Blink общая (префиксы webkit, например), но возможности уже довольно разные. На новом WebKit сейчас работают мобильные и десктопные браузеры Safari, на старом — встроенный браузер на Android до версии KitKat.

На движке Gecko работает браузер Firefox, когда-то очень популярный, а сегодня сохраняющий небольшую долю и важную роль в развитии веба и технологий. Префиксы у Gecko свои: moz — Mozilla, но для лучшей совместимости Firefox специально поддерживает некоторые свойства WebKit. Полноценный Firefox на Gecko работает на десктопных платформах и на Android. Параллельно с Gecko, Mozilla разрабатывает экспериментальный движок Servo и меняет некоторые части Gecko прямо на ходу. Например, в следующем Firefox 57 движок CSS заменят на новый.

Браузер Edge работает на всех современных платформах Microsoft, включая мобильные и Xbox. В его основе движок EdgeHTML — недавно как раз вышла его 16-я версия. EdgeHTML тоже форкнули от движка Trident или MSHTML, на котором работал браузер Internet Explorer. Удивительно похоже на историю Blink и WebKit: оба движка сохраняют общие префиксы (ms и опять немного webkit для совместимости), но сильно отличаются по возможностям. EdgeHTML отбросил всякое старьё и смело развивается: пара крупных релизов в год и даже система голосования за фичи. Trident и IE закрыли в 2015 году.

Кроме движков, полезно ещё знать особенности платформ. Например, на мобильной платформе iOS куча браузеров, помимо встроенного Safari: Chrome, Firefox, Opera, Яндекс, UC и даже Edge недавно выпустили. Но все эти браузеры — просто оболочки над встроенным в систему движком WebKit. Правила этой платформы запрещают использовать другие браузерные движки. А вот на Android большинство браузеров поставляются со своими движками: Firefox, Opera, Samsung, но некоторые используют встроенный Chromium.

Ну вроде всё? А нет! Есть ещё отдельная группа необычных браузеров: они живут не на устройствах пользователей, а глубоко на серверах. На устройствах стоит только лёгкая оболочка, которая запрашивает адрес и получает с сервера набор скриншотов и ссылок, слепленных в сайт. Это прокси-браузеры и они безумно сжимают трафик, но по пути теряют: фирменные шрифты, фоновые картинки, градиенты, скруглённые уголки, тени и вроде того. Opera Mini — один из самых популярных прокси-браузеров. На сервере у него крутится устаревший движок Presto, а ставят его чаще всего на простые телефоны. Но есть и другие, подробнее вам расскажет Тим Кадлек.

Некоторые браузеры работают только на одной платформе: Edge и IE есть только на Windows, Safari только на macOS и iOS. Были когда-то попытки интервенций, но ничего не вышло. Это конечно усложняет тестирование. К счастью, есть сервисы вроде BrowserStack, которые дают вам доступ ко всем существующим браузерам, а Microsoft выкладывает компактные образы Windows для тестирования Edge и IE в виртуальных машинах.

Ладно! Про браузеры мы теперь знаем. А что делать, если тот же браузер, тот же движок — а результат на разных платформах разный? А ничего не поделаешь! На деле браузеры могут сильно отличаться в зависимости от платформы или устройства. Самая большая разница между десктопными и мобильными браузерами — в последних очень много оптимизаций и просто магии. Но можно поймать и разное поведение на десктопных Windows и macOS.

Думаю вы уже поняли, к чему я клоню. Кроссбраузерность — это такой радужный единорог, за которым все гоняются, но никто не может поймать. Цель у погони, безусловно, благородная: чтобы сайты выглядели и работали одинаково хорошо на всех браузерах и всех платформах. И если размеры отступов, шрифта, высоту строки, цвета мы ещё можем более-менее гарантировать, то сглаживание текста, размытие теней, рендеринг графики и внешний вид системных контролов лучше даже не пытаться привести к общему виду.

Так что если для вас пиксель-пёрфект — это попасть в сетку и в горизонтальные размеры блоков, то у вас ещё есть шансы. Но если вы подкручиваете сглаживание текста, количество строк в абзаце или вертикальные размеры блоков с содержимым, строго по макету, вы тратите время впустую. Идеально кроссбраузерный сайт будет выглядеть одинаково чужеродно на всех платформах — ведь у каждой свои особенности, привычные пользователям.

И ещё про тестирование. Как бы хорошо ни имитировал устройства и браузеры эмулятор Chrome DevTools — это только намёк на то, как они будут выглядеть в реальности. Важно проверить результат на настоящих платформах и устройствах, как минимум: на Windows, Android, macOS и iOS. Настоящие пальцы на настоящем устройстве, настоящие браузеры в естественной среде обитания расскажут вам много нового о том, как именно будут пользоваться вашими интерфейсами. Это гораздо важнее того, насколько они похожи на макет.

Подпишитесь на новости браузеров в Твиттере, поставьте себе Chrome Canary, Firefox Nightly, Safari Technology Preview. Включайте флаги, пробуйте, будьте в курсе и главное — хватит гоняться за пикселями, займитесь хорошими интерфейсами. Сайты не должны выглядеть одинаково во всех браузерах.


Видеоверсия


Вопросы можно задавать здесь.

Кроссбраузерная вёрстка — Блог HTML Academy

Что такое кроссбраузерная вёрстка, — спрашивают Илья, Сергей и Эдуард, — какие есть браузеры и нужен ли пиксель-пёрфект?

Если собрать охапку современных браузеров, то разложить её можно по-разному: по устройствам, по платформам, по типу работы, да хоть по цвету иконок. Самое полезное для разработчика — уметь разложить их по движкам. Именно движок, то есть самое ядро браузера, определяет как он работает с вашей вёрсткой.

При всём разнообразии браузеров, независимых движков довольно мало, а новые появляются очень редко. Так что вместо десятков браузеров вам нужно поддерживать не больше пяти независимых движков. А ещё бывает, что браузеры с одним названием используют разные движки на разных платформах! В общем, всё очень сложно и интересно.

Самый популярный в мире браузерный движок — это Blink. Его использует Chrome и браузеры на его основе: Opera, Samsung Internet, Яндекс.Браузер и другие. Для работы с JavaScript, эти браузеры используют движок V8 — тот же, что и в Node.js. Один из главных разработчиков открытого движка Blink — Google, но в разработке активно участвует не меньше десятка компаний.

WebKit, другой популярный движок, очень похож на Blink. А вообще, наоборот — это Blink похож на WebKit. Это как? В 2013 году Blink форкнули из WebKit. По сути, скопировали. Google собрала вещи и сказала Apple, основному разработчику WebKit, что ей не нравятся её методы работы и теперь всё будет по-другому. Что поделать, опенсорс. И действительно, стало по-другому: основа у WebKit и Blink общая (префиксы webkit, например), но возможности уже довольно разные. На новом WebKit сейчас работают мобильные и десктопные браузеры Safari, на старом — встроенный браузер на Android до версии KitKat.

На движке Gecko работает браузер Firefox, когда-то очень популярный, а сегодня сохраняющий небольшую долю и важную роль в развитии веба и технологий. Префиксы у Gecko свои: moz — Mozilla, но для лучшей совместимости Firefox специально поддерживает некоторые свойства WebKit. Полноценный Firefox на Gecko работает на десктопных платформах и на Android. Параллельно с Gecko, Mozilla разрабатывает экспериментальный движок Servo и меняет некоторые части Gecko прямо на ходу. Например, в следующем Firefox 57 движок CSS заменят на новый.

Браузер Edge работает на всех современных платформах Microsoft, включая мобильные и Xbox. В его основе движок EdgeHTML — недавно как раз вышла его 16-я версия. EdgeHTML тоже форкнули от движка Trident или MSHTML, на котором работал браузер Internet Explorer. Удивительно похоже на историю Blink и WebKit: оба движка сохраняют общие префиксы (ms и опять немного webkit для совместимости), но сильно отличаются по возможностям. EdgeHTML отбросил всякое старьё и смело развивается: пара крупных релизов в год и даже система голосования за фичи. Trident и IE закрыли в 2015 году.

Кроме движков, полезно ещё знать особенности платформ. Например, на мобильной платформе iOS куча браузеров, помимо встроенного Safari: Chrome, Firefox, Opera, Яндекс, UC и даже Edge недавно выпустили. Но все эти браузеры — просто оболочки над встроенным в систему движком WebKit. Правила этой платформы запрещают использовать другие браузерные движки. А вот на Android большинство браузеров поставляются со своими движками: Firefox, Opera, Samsung, но некоторые используют встроенный Chromium.

Ну вроде всё? А нет! Есть ещё отдельная группа необычных браузеров: они живут не на устройствах пользователей, а глубоко на серверах. На устройствах стоит только лёгкая оболочка, которая запрашивает адрес и получает с сервера набор скриншотов и ссылок, слепленных в сайт. Это прокси-браузеры и они безумно сжимают трафик, но по пути теряют: фирменные шрифты, фоновые картинки, градиенты, скруглённые уголки, тени и вроде того. Opera Mini — один из самых популярных прокси-браузеров. На сервере у него крутится устаревший движок Presto, а ставят его чаще всего на простые телефоны. Но есть и другие, подробнее вам расскажет Тим Кадлек.

Некоторые браузеры работают только на одной платформе: Edge и IE есть только на Windows, Safari только на macOS и iOS. Были когда-то попытки интервенций, но ничего не вышло. Это конечно усложняет тестирование. К счастью, есть сервисы вроде BrowserStack, которые дают вам доступ ко всем существующим браузерам, а Microsoft выкладывает компактные образы Windows для тестирования Edge и IE в виртуальных машинах.

Ладно! Про браузеры мы теперь знаем. А что делать, если тот же браузер, тот же движок — а результат на разных платформах разный? А ничего не поделаешь! На деле браузеры могут сильно отличаться в зависимости от платформы или устройства. Самая большая разница между десктопными и мобильными браузерами — в последних очень много оптимизаций и просто магии. Но можно поймать и разное поведение на десктопных Windows и macOS.

Думаю вы уже поняли, к чему я клоню. Кроссбраузерность — это такой радужный единорог, за которым все гоняются, но никто не может поймать. Цель у погони, безусловно, благородная: чтобы сайты выглядели и работали одинаково хорошо на всех браузерах и всех платформах. И если размеры отступов, шрифта, высоту строки, цвета мы ещё можем более-менее гарантировать, то сглаживание текста, размытие теней, рендеринг графики и внешний вид системных контролов лучше даже не пытаться привести к общему виду.

Так что если для вас пиксель-пёрфект — это попасть в сетку и в горизонтальные размеры блоков, то у вас ещё есть шансы. Но если вы подкручиваете сглаживание текста, количество строк в абзаце или вертикальные размеры блоков с содержимым, строго по макету, вы тратите время впустую. Идеально кроссбраузерный сайт будет выглядеть одинаково чужеродно на всех платформах — ведь у каждой свои особенности, привычные пользователям.

И ещё про тестирование. Как бы хорошо ни имитировал устройства и браузеры эмулятор Chrome DevTools — это только намёк на то, как они будут выглядеть в реальности. Важно проверить результат на настоящих платформах и устройствах, как минимум: на Windows, Android, macOS и iOS. Настоящие пальцы на настоящем устройстве, настоящие браузеры в естественной среде обитания расскажут вам много нового о том, как именно будут пользоваться вашими интерфейсами. Это гораздо важнее того, насколько они похожи на макет.

Подпишитесь на новости браузеров в Твиттере, поставьте себе Chrome Canary, Firefox Nightly, Safari Technology Preview. Включайте флаги, пробуйте, будьте в курсе и главное — хватит гоняться за пикселями, займитесь хорошими интерфейсами. Сайты не должны выглядеть одинаково во всех браузерах.

Кроссбраузерная верстка

Кроссбраузерная верстка – это верстка сайта с его одинаковой видимостью в разных браузерах. Сказать по правде это занятие не легкое, так как каждый браузер имеет свои особенности и недостатки. Поэтому браузер для веб-дизайнера, как «Криптонит» для «Супермена». Жизнь веб-дизайнеров во всем мире, была бы гораздо лучше, если бы браузеры отображали  красивые дизайны без багов и подвохов. Но, к сожалению этого никогда не будет. Это наше время, чтобы заново продумать, как мы работаем с браузером. При кроссбраузерной верстке нужно учитывать все особенности каждого из браузеров, так как пользователь заходит с того браузера к которому он привык и мы его не можем заставить перейти на другой софт, и должны подстраиваться под него.

Полиграфия и веб-верстка

Современная веб-верстка сильно отличается и имеет ряд недостатков по сравнению с полиграфическим дизайном, где веками создавалась мировая практика. Хотя печатный рисунок и нельзя позиционировать из-за его фиксированного характера, полиграфия имеет плюсы в других областях, таких как цвет и контрастность из-за качества бумаги или печати.

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

Разные браузеры для разных людей

Браузеры и компании, так же, как и любая другая компания в мире имеет конкуренцию между собой. Но если была бы какая-то организация веб-стандартов, то не было бы смысла в создании разных браузеров и терялась бы конкуренция между ними. Есть только один удивительный браузер, считаю, мы бы назвали его WebKit. Но так как браузеры ведут борьбу за пользователей, то и получаются различия в браузерах в целях привлечения публики.

В мире полиграфии (печати), компании конкурируют друг с другом, добавляя новые возможности и различные профили цвета. Кроме того их инженеры учитывают особенности аудитории пользователей их продукта. Например, принтеры фирмы Canon используются более для коммерческой печати. Принтеры Ricohне имеют таких интенсивных цветовых гам как предыдущие, поэтому их используют для печати внутренней документации в компаниях (отчеты, протоколы, акты …). Думаю, для верстальщиков кроссбраузерного дизайна аналогия понятна. Если вы дизайнер, который делает печать объявлений для крупных коммерческих компаний, вы, скорее всего, выберете принтер с отличным качеством печати и широкой цветовой гаммой, а не деловой или личного класса.

Браузеры аналогичны к принтерам. Некоторые построены для обработки тяжелых конструкций, другие построены более для оказания документов. IE построен более для технической или бизнес аудитории, как Chrome, Firefox, для удовлетворения более творческой аудитории.

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

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

Качество кроссбраузерной верстки

Качество, это понятие растяжимое. Потому что простые проекты, будет гораздо проще сделать, чем какой-то дизайнерский шедевр. Поэтому при работе с заказчиком нужно учитывать сложность проекта по отношению к его кроссбраузерной верстке. Так как сделать действительно классный, кроссбраузерный, творческий, динамический дизайн практически нереально, поэтому при работе с заказчиком нужно указать на недостатки или точнее на различия вывода некоторых элементов дизайна в разных браузерах. Нужно дать им увидеть качество верстки в основных браузерах (популярных) и второстепенных, затем предоставить возможность выбора. Если вы знаете различия браузеров настолько хорошо, что сможете указать их в проекте при создании макета в Photoshop то это только плюс к вашей работе с клиентом.

С опытом работы, при оценке качества кроссбраузерной верстки, можно создать общий шаблон, или таблицу, которые будут показывать различия некоторых браузеров и использовать это для работы с клиентом.

Несколько советов для кроссбраузерной верстки:

Сделаем выводы:

В будущем нас ждут новые сюрпризы при кроссбраузерной верстке. Подготовимся к ним и будем искать новые альтернативы (обходные пути). Возможно, нам в этом поможет большая скорость интернета, мощные ПК, и новые веб технологии, такие как Flash и другие.

  • Знаете ли вы аудиторию? Может быть, ваша аудитория и не требует новых «наворотов» или новых возможностей браузера.
  • Поддерживайте ваш бренд с помощью цвета, логотипа и последовательности стилей. Не убивайте бренд новыми дизайнерскими идеями. Бренд – это качество и традиция.
  • Убедитесь что браузер не нарушает смысл вашего сайта. Содержание страницы и общее значение сайта должны быть отделены.
  • Равно к вышеописанному совету, контент (содержание страницы) должно быть отделено от дизайна и стиля. В смысле, содержание должно быть четко видимым, а не сливаться в общую картинку или какой-то набор блоков и символов.
  • Если вы верстаете ваш личный сайт, то проверяйте кроссбраузерность его дизайна в новых версиях браузеров постоянно, чтобы не потерять пользователей.

Дальше: Meta description – примеры реализации для SEO


Человеческим языком о правильной верстке сайтов

Пришло время поговорить о правильной верстке сайтов. Фиксированная, блочная, адаптивная, мобильная, резиновая, гибкая, семантическая, валидная, кроссбраузерная верстка – звучит очень сложно и непонятно. Давайте разберемся, что это значит, и что из всего этого вам нужно.

Если коротко, верстка — это создание HTML-кода и применение стилей по отрисованному дизайну. Чаще всего страницы верстают на основе подготовленного заранее в фотошопе psd-макета.

Чем ближе к оригиналу будет результат, тем лучше. В идеале страница должна одинаково выглядеть в разных браузерах и хорошо смотреться на мобильных устройствах.

Чем качественнее выполнена верстка сайта, тем лучше будет работать сайт или блог. Профессиональную верстку может выполнить только хороший верстальщик.

Какие требования сегодня предъявляют к верстке?

Основной список требований таков:

  • кроссбраузерность;
  • адаптивность;
  • минимум кода;
  • высокая скорость загрузки страниц;
  • семантичность;
  • валидность.

Рассмотрим подробнее, какие существуют виды верстки сегодня и станет понятно, что все это значит.

Виды верстки сайтов

Фиксированная верстка или статическая

Вне зависимости от размеров окна браузера или устройства ширина страниц будет постоянной. Все элементы занимают строго определенную ширину в пикселях на странице. Если разрешение экрана большое и окно браузера развернуто на весь экран, то, как правило, по бокам остается свободное место. И наоборот, на мобильных устройствах при фиксированной верстке снизу на странице появляется полоса горизонтальной прокрутки. Такая верстка считается устаревшей, а поисковики понижают сайты с такой версткой в выдаче.

Резиновая верстка

Страница занимает всю ширину браузера, каких бы размеров она не была и на каком бы устройстве вы не открыли эту страницу. Ширина элементов страницы задается в процентах от ширины окна, и поэтому занимают всю доступную область. При этой верстке тяжело добиться хорошего удобного дизайна при всех возможных разрешениях экранов, ведь страницы будут выглядеть по-разному.

Табличная верстка или верстка таблицами

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

Сегодня так страницы уже не верстают. Поисковики также не любят такие страницы и плохо их индексируют. Если вам нужно, вы можете разместить на странице таблицу или несколько, но не нужно делать с их помощью структуру страницы.

Блочная верстка, верстка блоками или div-верстка.

Это, пожалуй, самая распространенная верстка сегодня. Сетка страниц конструируется из множества блоков

и , которые вложены друг в друга. Для доступа к ним используются атрибуты id и class. Откройте исходный код (Ctrl + U) практически любой веб-страницы, и вы увидите такую верстку.

 

Адаптивная верстка или мобильная верстка

Ее еще иногда называют респонсивная или отзывчивая верстка. Ключевая особенность в том, что страницы хорошо адаптируются под любое разрешение экрана пользователя. Не важно, отрыли вы страницу на стационарном ноутбуке, на здоровенном широкоформатном мониторе или на смартфоне — в любом случае страница должна хорошо смотреться и быть удобной для пользователя. Это достигается тем, что используют несколько таблиц стилей под разные разрешения.

Гибкая верстка или flex верстка

Сначала применяется блочная верстка, а потом нужные блоки превращают во флекс-контейнеры (флексбоксы). Если говорить сложным языком, в стилях элемента указывают display: flex; элементу можно указать направление главной оси и выравнивание. Эти возможности стали доступны с приходом стандарта CSS3. Теперь страницы становятся очень гибкими. Если по-простому – элементы объединяются в специальные контейнеры, задаются простые настройки и браузеры сами выстраивают элемент максимально органично. Этот механизм является наиболее перспективным, и, хотя технология плохо поддерживается старыми браузерами, в будущем ее применения будет расширяться.

Также хорошая верстка должна обладать некоторыми свойствами.

Семантическая верстка

Стала логичным продолжением блочной верстки, появилась в HTML5. Простыми словами – теги должны соответствовать информации, находящейся в них. Новые теги делают станицу более структурированной и понятными. Поисковики любят такие страницы.

Валидная верстка или по-другому верстка без ошибок

Это верстка, выполненная в соответствии со стандартами W3C. Проверить HTML-страницу на корректность вы можете с помощью специального валидатора W3C, а невалидно сверстанные страницы нагоняют.

Кроссбраузерная верстка.

Как понятно из названия, при такой верстке страницы выглядят одинаково в разных браузерах. Сейчас, при всем многообразии используемых программ, очень важно, чтобы все пользователи видели на экране одно и то же, чтобы ничего не съезжало и не перекашивалось.

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

Сайты без адаптивной верстки считаются отстающими и несовременными, потому что доля посещений с мобильных устройств растет изо дня в день. Совсем скоро сайты, имеющие адаптивную верстку под мобильные устройства, оставят своих конкурентов позади.

В digital-агентстве PALAX работают высокопрофессиональные верстальщики, которые сделают так, чтобы Ваш сайт отлично смотрелся на любых современных устройствах.

Простые, но эффективные советы по кросс-браузерной вёрстке, которые должен знать каждый

Многие дизайнеры постоянно ищут кросс-браузерные приёмы, которые помогли бы им решать проблемы совместимости браузеров.

В конце концов, создание сайта — дело простое, но разработка такого, который бы выглядел одинаково во всех браузерах, может стать непростой задачей. Уже много лет проблема совместимости браузеров является одной из самых сложных частей веб разработки.

Наша постоянная задача как веб-дизайнеров и веб-разработчиков — создание для пользователей наилучшего впечатления от использования нашего сайта. Однообразное отображение сайта во всех браузерах способствует этому как нельзя лучше.

Если вы разрабатываете веб-сайты в течение долгого времени, вы согласитесь со мной, что Internet Explorer 8 и более ранние версии этого браузера — это один из самых больших кошмаров веб-дизайнеров и разработчиков. Несмотря на это, есть ещё люди, использующие эти версии IE для просмотра веб-сайтов.

Это только одна из проблем, с которыми мы можем столкнуться при разработке кросс-браузерного веб-сайта. Отрадно, что мы можем перестроить сайт или применить некоторые приёмы, чтобы сделать его совместимым и выглядящим одинаково во всех браузерах.

В этой статье я покажу вам некоторые кросс-браузерные стилевые приёмы и трюки, которые серьёзно упрощают разработку веб-сайтов.

Давайте смиримся с тем фактом, что веб-браузеры по умолчанию по-разному стилизуют элементы HTML. Некоторые браузеры имеют различный подход к значениям таких стилей как margin и padding.

Чтобы это исправить, есть хороший приём — добавить код CSS reset в начало вашего файла стилей. Это сбросит стили всех элементов.

Также это приведёт к тому, что вы начнёте стилизацию с нуля, то есть получите полный контроль над элементами, не волнуясь о разной изначальной стилизации элементов, вроде полей, заполнений или выравнивания.

У Эрика Майера есть хороший набор правил CSS, чтобы сделать это. Также вы можете посмотреть на Normalize.css от Николаса Галлахера, современную альтернативу для сброса стилей в HTML5.

После того, как примените эти правила CSS к вашей разметке, вы можете быть уверены, что у вас есть нулевая точка отсчёта для всех браузеров.

Хорошей практикой перед выкладыванием сайта в сеть является проверка HTML и CSS при помощи валидаторов, так как это поможет вам исправить некоторые мелкие ошибки, которые могут принести проблемы в будущем.

Вы можете использовать валидаторы HTML и CSS от W3C. Эти валидаторы одобрены W3C, но, если вы хотите, то можете использовать любые другие, которые вам нравятся.

Древние версии IE причиняли много головной боли веб-дизайнерам и разработчикам, когда дело доходило до проблем совместимости. Для решения этой проблемы Microsoft разработали условные комментарии для своего браузера, позволяющие привязывать файл стилей, который будет интерпретирован только браузером IE.

Рассмотрим пример.

Следующий код будет работать во всех версиях IE:

<!--[if IE]>
<link href="ie.css" rel="stylesheet" type="text/css" /!>
<[endif]-->

А следующий код предназначен для конкретной версии IE:

<!--[if IE6]>
<link href="ie.css" rel="stylesheet" type="text/css" /!>
<[endif]-->

Стандарты W3C постоянно совершенствуются. Хорошо, если вы знаете о каких-либо недостатках в поддержке определённым браузером некоторого свойства CSS. Такие стилистические приёмы, как скруглённые углы, тени и градиенты, сейчас могут быть реализованы, используя только CSS, без помощи изображений.

Использование вендорных префиксов поможет вам сэкономить уйму времени, не заботясь о том, поддерживает ли браузер ваш код CSS.

Рассмотрим список вендорных префиксов:

  • Safari и Chrome (-webkit-)
  • Firefox (-moz-)
  • Opera (-o-)
  • Internet Explorer (-ms-)

В качестве примера давайте используем свойство transition с вендорными префиксами для определённых браузеров:

-webkit-transition: all 4s ease;
-moz-transition: all 4s ease;
-ms-transition: all 4s ease;
-o-transition: all 4s ease;
transition: all 4s ease;

Мы все знаем, как сделать элемент плавающим, влево или вправо, используя свойство float. По умолчанию, если вы используете только один плавающий элемент совместно с не плавающим, первый просто расположится сбоку от последнего при наличии места.

Но проблема тут не в этом. Чаще всего мы располагаем плавающие элементы слева и справа и помещаем их в контейнер.

Посмотрите на рисунки ниже:

Рис. 1. Вот, чего мы хотим добиться.

Рис. 2. Однако вот, что у нас получается.

Эта проблема может быть решена простой очисткой пространства после плавающих элементов с помощью CSS свойства clear со значением both. Это значит, что пространство с обеих сторон будет очищено.

Хотя не существует каких-либо строгих правил использования определённого измерения для размера шрифта, я бы посоветовал использовать единицы em и проценты, поскольку они основаны на настройке размера шрифта в браузере пользователя.

Большинство людей используют пиксели (px) или пункты (pt), которые основаны на разрешении экрана. Они всегда фиксированы.

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

Вы можете сэкономить время, используя эмуляторы, вроде spoon plugin, но настоятельно рекомендуется тестировать ваше творение в настоящих браузерах.

Упрощение кода делает всю работу простой и быстрой. Что я имею в виду? Одно только использование простых элементов при разработке вашего веб-сайта делает задачу браузера по чтению вашего кода гораздо проще.

Например, вместо использования таблиц и параграфов для создания навигации, вы можете просто использовать для этого ненумерованный список. Для создания отзывчивого веб-сайта элементы div подойдут гораздо лучше, чем таблицы.

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

Существуют и другие приёмы и трюки для поддержания кросс-браузерной совместимости, но эта статья должна снабдить вас базовым фундаментом, на котором будут строиться все ваши дальнейшие знания по этой проблеме.

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

Если вы знаете какие-нибудь другие приёмы, которые мы не осветили здесь, или у вас есть комментарии или предложения, мы будем рады их услышать. Пожалуйста, оставляйте ваши комментарии к этой статье.

Вадим Дворниковавтор-переводчик статьи «Simple Yet Important Cross-Browser Styling Tips Everyone Should Know»

Кроссбраузерная верстка. Что нужно для кроссбраузерной верстки – инструменты

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

Именно поэтому я дам определение данному термину и подробно опишу, что это такое, объясню, почему возникает проблема разного отображения одного и того же сайта на html и css в и дам несколько полезных советов. Давайте начнем разбор полетов!

Кроссбраузерность, покажи свое лицо!

Все из вас знают английское название термина «кроссбраузерность»: cross-browser. В дословном переводе это означает: «работающий во всех браузерах». Вот по сути и была названа главная цель кроссбраузерности: способствовать идентичному отображению в любом существующем браузере.

Это означает, что независимо от того, в каком ППО для просмотра вы откроете сервис, его стилевая разметка не должна измениться.

Почему же все такие проблемные?

В сфере IT на этот философский вопрос можно дать ответ. И он, на самом деле, очень прост. В наше время технологии развиваются с бешенной скоростью и поэтому каждый год для браузеров выходят расширения, обновления, внедряется поддержка новых возможностей веб-языков и соответственно исключаются устаревшие функции и методы.

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

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

Второй проблемой некорректного отображения объектов на страницах веб-сервисов могут стать браузерные стандартные значения. Так, в каждом продукте, будь то , Safari, или другие, для большинства свойств и атрибутов установлены некие значения по умолчанию. В качестве примера можно назвать разные отступы от края экрана для тега body.

И к третьей проблеме можно отнести в некотором роде халатность самих разработчиков. Что я подразумеваю под этим? Всего лишь несоблюдение стандартизированных правил, которые были установлены специальной организацией W3C (официальный сайт расположен по ссылке https://www.w3.org).

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

Рецепты для решения проблем с идентичностью отображения

Познакомившись с основными «камнями преткновения» на пути к кроссбраузерности, вы, вероятно, задали себе вопрос: «А как же тогда сделать сайт, функционирующий во всех браузерах одинаково?». Чтобы ответить на этот вопрос, я решил перечислить базовые решения и полезные советы по порядку.


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

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

С уважением, Роман Чуешов

Прочитано: 106 раз

Вы когда-нибудь замечали, что сайт может по разному отображаться в разных браузерах? В этом и есть смысл кроссбраузерной верстки.

Что такое кроссбраузерная верстка

Кроссбраузерная верстка — подход к разработке html-кода (верстка), который обеспечивает корректное отображается во всех существующих браузерах

Причем под корректностью понимается именно точное расположение всех деталей макета и функционала. Сайт должен смотреться одинаково во всех популярных браузерах:

Задача достаточно сложная, если использовать «специфичные» возможности CSS , так как все браузеры отображают некоторые элементы веб-страниц по-своему. И каждая новая версия включает в себя новые возможности, реализуемые в браузерах от других разработчиков далеко не в один и тот же день.

Кроссбраузерная верстка хорошо знакома тем, кто работал с браузером Internet Explorer 6 – он подпортил немало нервов верстальщикам за счет своей уникальности. А уникальность эта выражалась в том, что этот браузер не поддерживает очень многие правила и стандарты. В результате выходило так, что сверстанный макет смотрелся в Firefox и Opera просто великолепно, разваливаясь в IE6 в абсолютную кашу.

Причины нарушения корректного отображения страниц

Несмотря на то, что в мире имеются определенные стандарты по построению web-страниц, разработчики постоянно внедряют в браузеры поддержку новых технологий и новых правил CSS. Это позволяет создавать более динамичные и функциональные сайты, реализуя ранее недостижимые возможности. И каждый разработчик стремится к тому, чтобы его браузер поддерживал самые новые технологии, новые скрипты и новые библиотеки. В результате одни пользователи радуются новому браузеру, в котором хорошо отображаются самые продвинутые сайты, а другие не могут понять, почему открывшаяся страница открывается некорректно. Именно поэтому верстальщик должен написать код, который отображался бы в разных браузерах максимально одинаково.

Также не стоит забывать, что постоянно появляются новые версии браузеров и было бы очень не плохо, чтобы на новых версиях сайт также корректно работал.

Что нужно для кроссбраузерной верстки – инструменты

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

Неоценимую помощь оказывают сравнительны таблицы, показывающие различия в восприятии отдельных элементов различными браузерами. То есть, для того чтобы выполнить кроссбраузерную верстку, нам понадобятся:

  • Общие знания о верстке;
  • Знания в области особенностей верстки под те или иные браузеры;
  • Несколько браузеров на одном компьютере;
  • Проверка в сервисе browsershots.org

Кстати, было бы неплохо создать на своем компьютере виртуальную машину, установить на нее операционную систему и загрузить туда старые версии браузеров – многие до сих пор пользуются старым софтом, не понимающим современные технологии.

Отдельный фронт работ нужно провести с заказчиком. Ему нужно объяснить, что в мире web-дизайна нет ничего идеального, и что некоторыми моментами придется пожертвовать. Задачей команды дизайнеров и программистов становится создание сайта, который должен соответствовать следующим пунктам:

  • Максимальное соответствие исходному макету и пожеланиям заказчика;
  • Максимальное корректное отображение во всех популярных браузерах;

В процессе создания кроссбраузерной верстки в коде задается значение атрибутов элементов HTML по умолчанию, что уже на начальном этапе позволяет избавиться от некорректного отображения даже самых простых макетов будущих сайтов. Далее производится расстановка тегов с учетом совместимости кода в различных браузерах. На этом этапе верстальщику нужно будет постоянно контролировать корректность отображения сайта, используя для этого браузеры всех версий и поколений (во всяком случае, нужен хотя бы базовый набор из популярных браузеров последних лет).

Для того чтобы облегчить свою работу по созданию кроссбразуерной верстки, следует сначала выполнить верстку для одного браузера, контролируя соответствие исходному шаблону в PSD. После этого проверяется корректность отображения в других браузерах с одновременной модернизацией исходного кода. Такой подход значительно ускоряет создание кроссбраузерной верстки и позволяет в сжатые сроки получить достойные результаты.

Заключение

Кроссбраузерная верстка – это краеугольный камень современного web-дизайна. Различия в работе браузеров часто являются препятствием для реализации тех или иных возможностей. В результате мы довольствуемся усредненным, но доведенным до пика совершенства результатом. А сегодня кроссбраузерная верстка дополнилась необходимостью создания адаптивного дизайна , корректно отображающегося не только в любых браузерах, но и на любых мобильных устройствах.

Многие дизайнеры постоянно ищут кросс-браузерные приёмы, которые помогли бы им решать проблемы совместимости браузеров.

В конце концов, создание сайта — дело простое, но разработка такого, который бы выглядел одинаково во всех браузерах, может стать непростой задачей. Уже много лет проблема совместимости браузеров является одной из самых сложных частей веб разработки.

Наша постоянная задача как веб-дизайнеров и веб-разработчиков — создание для пользователей наилучшего впечатления от использования нашего сайта. Однообразное отображение сайта во всех браузерах способствует этому как нельзя лучше.

Если вы разрабатываете веб-сайты в течение долгого времени, вы согласитесь со мной, что Internet Explorer 8 и более ранние версии этого браузера — это один из самых больших кошмаров веб-дизайнеров и разработчиков. Несмотря на это, есть ещё люди, использующие эти версии IE для просмотра веб-сайтов.

Это только одна из проблем, с которыми мы можем столкнуться при разработке кросс-браузерного веб-сайта. Отрадно, что мы можем перестроить сайт или применить некоторые приёмы, чтобы сделать его совместимым и выглядящим одинаково во всех браузерах.

В этой статье я покажу вам некоторые кросс-браузерные стилевые приёмы и трюки, которые серьёзно упрощают разработку веб-сайтов.

Используйте CSS Reset

Давайте смиримся с тем фактом, что веб-браузеры по умолчанию по-разному стилизуют элементы HTML. Некоторые браузеры имеют различный подход к значениям таких стилей как margin и padding .

Чтобы это исправить, есть хороший приём — добавить код CSS reset в начало вашего файла стилей. Это сбросит стили всех элементов.

Также это приведёт к тому, что вы начнёте стилизацию с нуля, то есть получите полный контроль над элементами, не волнуясь о разной изначальной стилизации элементов, вроде полей, заполнений или выравнивания.

У Эрика Майера есть хороший набор правил CSS , чтобы сделать это. Также вы можете посмотреть на Normalize.css от Николаса Галлахера, современную альтернативу для сброса стилей в HTML5.

После того, как примените эти правила CSS к вашей разметке, вы можете быть уверены, что у вас есть нулевая точка отсчёта для всех браузеров.

Проверяйте ваш код HTML и CSS

Хорошей практикой перед выкладыванием сайта в сеть является проверка HTML и CSS при помощи валидаторов, так как это поможет вам исправить некоторые мелкие ошибки, которые могут принести проблемы в будущем.

Вы можете использовать валидаторы HTML и CSS от W3C. Эти валидаторы одобрены W3C, но, если вы хотите, то можете использовать любые другие, которые вам нравятся.

Условные комментарии IE

Древние версии IE причиняли много головной боли веб-дизайнерам и разработчикам, когда дело доходило до проблем совместимости. Для решения этой проблемы Microsoft разработали условные комментарии для своего браузера, позволяющие привязывать файл стилей, который будет интерпретирован только браузером IE.

Рассмотрим пример.

Следующий код будет работать во всех версиях IE:

А следующий код предназначен для конкретной версии IE:

Используйте вендорные префиксы

Стандарты W3C постоянно совершенствуются. Хорошо, если вы знаете о каких-либо недостатках в поддержке определённым браузером некоторого свойства CSS. Такие стилистические приёмы, как скруглённые углы, тени и градиенты, сейчас могут быть реализованы, используя только CSS, без помощи изображений.

Использование вендорных префиксов поможет вам сэкономить уйму времени, не заботясь о том, поддерживает ли браузер ваш код CSS.

Рассмотрим список вендорных префиксов:

  • Safari и Chrome (-webkit-)
  • Firefox (-moz-)
  • Opera (-o-)
  • Internet Explorer (-ms-)

В качестве примера давайте используем свойство transition с вендорными префиксами для определённых браузеров:

Webkit-transition: all 4s ease; -moz-transition: all 4s ease; -ms-transition: all 4s ease; -o-transition: all 4s ease; transition: all 4s ease;

Очищайте пространство после плавающих элементов

Мы все знаем, как сделать элемент плавающим, влево или вправо, используя свойство float . По умолчанию, если вы используете только один плавающий элемент совместно с не плавающим, первый просто расположится сбоку от последнего при наличии места.

Но проблема тут не в этом. Чаще всего мы располагаем плавающие элементы слева и справа и помещаем их в контейнер.

Посмотрите на рисунки ниже:


Рис. 1. Вот, чего мы хотим добиться.


Рис. 2. Однако вот, что у нас получается.

Эта проблема может быть решена простой очисткой пространства после плавающих элементов с помощью CSS свойства clear со значением both . Это значит, что пространство с обеих сторон будет очищено.

Управление размером шрифта

Хотя не существует каких-либо строгих правил использования определённого измерения для размера шрифта, я бы посоветовал использовать единицы em и проценты, поскольку они основаны на настройке размера шрифта в браузере пользователя.

Большинство людей используют пиксели (px ) или пункты (pt ), которые основаны на разрешении экрана. Они всегда фиксированы.

Всегда тестируйте ваш веб-сайт в нескольких браузерах

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

Вы можете сэкономить время, используя эмуляторы, вроде spoon plugin , но настоятельно рекомендуется тестировать ваше творение в настоящих браузерах.

Упрощайте код

Упрощение кода делает всю работу простой и быстрой. Что я имею в виду? Одно только использование простых элементов при разработке вашего веб-сайта делает задачу браузера по чтению вашего кода гораздо проще.

Например, вместо использования таблиц и параграфов для создания навигации, вы можете просто использовать для этого ненумерованный список. Для создания отзывчивого веб-сайта элементы div подойдут гораздо лучше, чем таблицы.

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

Заключение

Существуют и другие приёмы и трюки для поддержания кросс-браузерной совместимости, но эта статья должна снабдить вас базовым фундаментом, на котором будут строиться все ваши дальнейшие знания по этой проблеме.

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

Если вы знаете какие-нибудь другие приёмы, которые мы не осветили здесь, или у вас есть комментарии или предложения, мы будем рады их услышать. Пожалуйста, оставляйте ваши комментарии к этой статье.

Перевод статьи “Simple Yet Important Cross-Browser Styling Tips Everyone Should Know ” был подготовлен дружной командой проекта

– это способность веб-ресурса отображаться одинаково и работать во всех популярных , без перебоев в функционировании и ошибок в верстке, а также с одинаково корректной читабельностью контента. Из-за стремительного развития технологий, сайт рекомендуется делать кроссбраузерным только по отношению к новейшим версиям браузеров.

Данный термин был впервые использован в 90-х годах, когда наблюдался самый разгар соперничества браузеров. В те времена кроссбраузерными считались ресурсы, одинаково работающие в Netscape Navigarot (браузер прекратил свое существование в 2007 году) и в Internet Explorer. Со временем производители приложений начали реализовывать функции, характерные только для одного из браузеров. В результате этого они стали отличаться друг от друга способами отображения страниц и их работой.

Любой современный браузер применяет собственные алгоритмы обработки исходного и кода. В связи с этим разработчики ресурсов встречаются с проблемами совместимости сайта с тем или иным браузером. Чтобы сделать проект кроссбраузерным, вам не обойтись одними лишь стандартными инструментами CSS. Здесь также потребуются специальные CSS-селекторы (хаки), присущие лишь конкретному браузеру, поэтому их придется прописывать для каждого приложения отдельно.

Есть немало эффективных методов, с помощью которых можно добиться корректного отображения страниц даже на старых версиях браузеров. Однако прибегать к таким процедурам разумно только в том случае, если вы уверены, что большая часть посетителей сидит на вашем сайте именно с них.

В последние годы оптимизаторы все меньше сталкиваются с проблемами кроссбраузерности, потому что разработчики программного обеспечения перестают поддерживать старые версии своих браузеров. Так, например, компания Microsoft уже в открытую заявляет о необходимости использования обновленного Internet Explorer, призывая отказываться от устаревших версий продукта.


На заметку. Сегодня многие сайтостроители устанавливают специальную страницу, известную как «заглушка», которая появляется на экране пользователей браузеров, не поддерживаемых сайтом. Такая страница предлагает заменить их на новые версии или популярные браузеры, чтобы контент отображался корректно.

Стоит отметить, что элементы веб-ресурса не должны быть абсолютно идентичны во всех браузерах, которые только существуют на сегодняшний день. Соответствующим можно считать сайт, если:

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

Тестируя веб-ресурс на кроссбраузерность, необходимо применять самые новые версии популярнейших браузеров:

  1. Google Chrome.
  2. Mozilla Firefox.
  3. Opera.
  4. Internet Explorer.
  5. Netscape.
  6. Safari.

По той причине, что в последнее время процент мобильного трафика существенно вырос и Google внедрил , вебмастера все чаще занимаются обеспечением совместимости страниц с планшетами и смартфонами. Дисплеи у данных устройств куда меньше, чем у мониторов персональных компьютеров, поэтому они нуждаются в адаптации к мобильным устройствам.

Как сделать сайт кроссбраузерным?

Есть несколько действующих методов, с помощью которых вы сможете добиться кроссбраузерности своего веб-ресурса.

Применение CSS хаков

CSS hacks – это фрагменты кода, которые понимает только один браузер. Например, если ваш сайт отображается правильно в трех браузерах, а в остальных трех видны какие-то «косяки», то проблема решается отдельным прописыванием соответствующих хаков для каждого из трех браузеров, которые неправильно интерпретируют содержимое страницы.

На заметку. Хаки – не самый лучший способ исправления ошибок в коде, так как они делают его некрасивым и неправильным. Однако он продолжает выполнять свои функции.

Внедрение универсальных элементов

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

Проверить, какие теги какой версией движка поддерживаются, можно с помощью сервиса caniuse.com , который доступен совершенно бесплатно.

Вендорные префиксы

Они являются пережитком браузерных войн, особенно WebKit. Этот метод эффективнее и «чище», чем применение хаков.

Любому браузеру характерны уникальные свойства, имеющие вендорный префикс. Рассматривая случай с Google Chrome, элемент border-radius представлен здесь свойством -webkit-border-radius. А в Mozilla Firefox добавляется префикс -moz-. Подобные свойства изменяют функции элемента только в конкретном браузере, и никак не влияют на другие браузеры.

Сервисы проверки кроссбраузерности

Если ваш веб-сайт недостаточно кроссбраузерный, то большей части посетителей будет сложно одинаково воспринимать его содержимое, а это повлечет за собой ухудшение поведенческих факторов, которые обязательно учитываются поисковыми системами в процессе ранжирования результатов выдачи.

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

№1. CrossBrowserTesting


Данный сервис тестирования является платным, работает в режиме онлайн. Он поддерживается практически всеми версиями операционных систем, браузерами, подходит для большей части мобильных устройств и разрешений экрана.

Проверить сайт на соответствие различным браузерам можно следующими способами:

  • «Живой» тест. Можно работать с ресурсом в браузере с заранее выбранными параметрами, записывать видео и делать скриншоты.
  • Тест Selenium. Подразумевает автоматическую проверку в соответствии со скриптом, сделанным предварительно. Разрешается записывать результаты в формате видеофайла.
  • Режим автоматического сохранения скриншотов. Можно комбинировать различные ОС, браузеры, устройства и размеры экранов.
  • Локальное подключение. Можно проверить документы, которые еще не загрузились на сайт.

Несмотря на то, что сервис платный, в течение 7 дней вам доступен лимит 60 минут для его использования, чтобы оценить функции и возможности приложения перед тем, как оформить платную подписку.

№2. Browsershots


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

Тут доступна как бесплатная, так и платная версия. В бесплатной плохо то, что ваш запрос становится в очередь, и скриншоты начнут подгружаться на сервер поочередно после высвобождения сайтов. Данная процедура может занять от 10 минут до 2-3 часов, что довольно долго.

Оформив платную подписку, ваши запросы на тестирование кроссбраузерности будут в приоритете. Еще вы сможете выбрать разрешение экрана, JavaScript и Flash различных версий, а также глубину цвета.

№3. IE NetRenderer


Подразумевает бесплатную проверку, доступную в онлайн режиме. Сервис отличается тем, что проверять соответствие сайта можно только для Internet Explorer, начиная от версии 5.5, и заканчивая 11-й. Указать здесь можно только версию браузера и адрес тестируемого ресурса.

№4. IE Tester

Является специальным браузером, где можно проверять различные версии IE. Это локальное приложение, которое доступно для использования после установки на компьютер. Основные функции приложения – имитация функционирования выбранной версии браузера и заработок в сети на просмотре интернет-страниц.

№5. Browserling


Посредством данного сервиса вы получаете возможность работать с проверяемым ресурсом не в эмулируемом, а в реальном окне браузера, который установлен в виртуальной машине программы. Проверку возможно осуществлять для 5 популярнейших браузеров (Chrome, Opera, IE, Safari, Firefox), для 5 версий ОС Windows и 4 версий ОС Anrdoid. Можно настраивать разрешение экрана и создавать скриншоты. Все функции сервиса платные, бесплатные только первые 3 минуты тестирования, с разрешением 1024×768 и ОС Windows Vista.

№6. Spoon Browser Sandbox


Предлагает проверку совместимости сайта с точными версиями Chrome, IE, Opera, Safari и Firefox. Последние версии браузеров тестируются бесплатно, но если вы захотите проверить старые версии, вам придется заплатить определенную сумму.

Выбрав браузер, он откроется в новом окне, а дальше в адресной строке необходимо указать URL страницы, после чего протестировать ее. В инструменте доступно тестирование всех параметров кроссбраузерности. Однако для его использования потребуется загрузить специальный плагин.

№7. MultiBrowser


Платная программа проверки кроссбраузерности. Она работает со всеми доступными на сегодняшний день версиями Firefox и Chrome, Safari 5.1, несколькими сборками Explorer и эмуляциями большинства смартфонов и планшетов с самыми разными разрешениями экранов.

Приложение способно применять браузеры, уже установленные на ПК, либо загружать версии, которые нужны пользователю. Огромным преимуществом сервиса является функция, которая дает возможность тестировать сайт в различных браузерах в оффлайн режиме, если сохранить интернет-файлы.

Благодаря разнообразию режимов, вы сможете:

  • работать с ресурсом в нужном браузере;
  • смотреть сайты на эмулированных смартфонах и планшетах, записывать видео;
  • автоматически сохранять скриншоты с различных браузеров и устройств, в соответствии с изобилием размеров экранов.

Для начала можно установить демо-версию программы, доступную в течение 2 недель.

№8. Sauce Labs


Онлайн сервис тестирования кроссбраузерности. Пробная версия у него довольно ограниченная, а вот при оформлении платной подписки станет доступна автоматическая проверка. Здесь есть около 700 комбинаций браузеров, разрешений и устройств.

№9. Browsera


Приложение проверки кроссбраузерности доступно и в платном, и в бесплатном варианте. Функции второго, естественно, существенно ограничены числом проверяемых страниц сайта и доступных браузеров.

№10. Litmus


Онлайн приложение, пользоваться бесплатно которым можно только первые 3 дня. Поддерживает многие новые версии популярных браузеров и мобильные устройства.

№11. Equafy


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

Перед проверкой, которую можно сохранять в видеоформате, вы можете осуществить изобилие настроек, которых нет во многих других подобных сервисах. Единственная проблема – английский язык, но с помощью переводчика разобраться в функционале будет совсем не трудно.

Посмотреть скриншоты можно в списке страниц готового отчета, нажав на стрелку Show в крайней колонке.

№12. Browserstack


Платное приложение, демо-версию которого можно опробовать в первые 30 минут. Тестирование кроссбраузерности сайта можно производить с 7 современными браузерами различных версий, изобилием эмулированных смартфонов и планшетов, а также с установленным на компьютере ПО.

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

№13. Viewlike.us


Отличный сервис для проверки отображения ресурса с разными расширениями. Это отличный вариант, если вы хотите протестировать внешний вид веб-сайта и узнать степень его адаптивности.

Помимо проверки кроссбраузерности, вы также узнаете скорость загрузки и удобство использования ресурса. Поможет Viewlike.us узнать и размер элементов HTML кода и изображений, а также число статических ресурсов.

Еще инструмент позволяет получить рекомендации касательно правил юзабилити. К примеру, есть ли на сайте плохо распознаваемый размер шрифта и применяются ли в нем плагины. Затем вы получите скриншоты страниц тестируемого веб-ресурса в разных разрешениях.

№14. Ghostlab


Бесплатно-платная многофункциональная программа тестирования. Первые 7 дней доступна триал-версия.

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

Заключение

Кроссбраузерность оказывает большое влияние на показатели поведенческих факторов и, как итог, позиции сайта при ранжировании поисковиками. От того, насколько хорошо и как много браузеров поддерживает ваш проект, зависит количество посетителей и заинтересованность пользователей в его контенте.

Не нужно быть опытным специалистом, чтобы понимать, что, зайдя на сайт со смартфона, человек с большой вероятностью покинет его, если дизайн и структура на его устройстве будет выглядеть неразборчиво и неэстетично. Также не забывайте, что поисковики поощряют адаптированные веб-ресурсы, оформление которых соответствует правилам верстки, поднимая их внутренний рейтинг и, тем самым, улучшая конверсию.

Александр Овсянников ака Интернет Мажор

Занимаюсь продвижением и заработком на сайтах с 2009 года.

На сегодняшний день существует несколько самых популярных браузеров, которые люди используют для своей работы в Интернет. И постоянная головная боль любого веб дизайнера — это то, что один и тот же HTML код выглядит по разному в разных браузерах. Более того, один и тот же код выглядит по разному в разных версиях одного и того же браузера.

Естественно, любой веб мастер должен заботится о том, чтобы сайт выглядел одинаково в наибольшем количестве браузеров. Именно это умение (когда код выглядит одинаково в различных браузерах) и называют «кроссбраузерной версткой HTML». Умение верстать такой код — весьма полезно и ценится потенциальными работодателями. Очень часто такое требование стоит одним из первых в условиях, которым должен удовлетворять потенциальный кандидат на вакансию веб программиста в серьезную компанию.
Почему сайт выглядит по разному в различных браузерах?

Существует несколько причин возникновения различного вида сайта на различных обозревателях.

1. Использование нестандартных возможностей HTML.

Дизайнер может использовать возможности, которые не входят в стандарт HTML. Действительно, браузеры могут поддерживать множество различных атрибутов тегов, которые не описаны в стандарте. Использовать эти возможности не рекомендуется. По одной простой причине — если что-либо не описано в стандарте, какой-либо из браузеров может это не поддерживать. И создатели такого браузера будут совершенно правы. Не нужно использовать нестандартные особенности.

Всегда проверяйте написанный вами код на соответствия стандарту.

Приведу классический пример. Рассмотрим следующий HTML код простейшей таблицы.

Данный код выводит таблицу, состоящую из одной ячейки. Веб дизайнер хочет, чтобы высота первой строки данной таблицы была равна 100 пикселям. Однако, в стандарте HTML у тега

недопустим атрибут height.

В данном случае, ошибка не велика, так как атрибут height у тега

понимают большинство современных браузеров. (Лишь InternetExplorer 4, не распознает этот атрибут). Но в других случаях, пренебрежение стандартом может привести к более плачевным результатам. Наверняка, все из нас бывали на сайтах, на которых какой-либо элемент съезжал либо вбок, либо вниз. Каждый из нас, скорее всего, в душе думал, что сайт делал не профессионал. Хотя, скорее всего, сайт просто не был протестирован на основных типах браузеров. Как правило, сайты создают и тестируют только в InternetExplorer, так как это наиболее популярный браузер среди пользователей. Поэтому, в следующий раз, будем снисходительны, зная, почему происходит потеря внешнего вида.

Правильное решение для примера с табличной — это использование стилей. Вот как может выглядеть «правильный» код:

Данный вариант будет (или, по крайней мере, должен) отображаться одинаково во всех типах браузеров.

2. Значения атрибутов по умолчанию.

У каждого HTML элемента существует множество атрибутов. Это и цвет, и расстояние до соседних элементов, и выравнивание, и многое другое. Когда верстается HTML код, дизайнер обычно задает значения только тех атрибутов, которые для важны для представления элементов на странице. Что же делать браузеру со значениями неуказанных атрибутов? В этом случае браузеры используют значения по умолчанию. И вот тут-то и кроется опасность. Значения по умолчанию у различных браузеров могут различаться. Например, размер шрифта по умолчанию может быть разным. Из-за этого в одних браузерах текст займет больше места, чем в других. Что, в свою очередь, может привести к различиям в отображении страницы.

Как можно решить эту проблему? Во-первых, универсальный совет: проверять отображение сайта в как можно большем количестве браузеров. Во-вторых, можно в css файле задать свои значения по умолчанию для всех элементов, которые используются на странице. Это избавит браузер от необходимости «додумывать» значения свойств HTML элементов. Сделать это можно, например, так:
html, body, div, span, applet, object, iframe,
h2, h3, h4, h5, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit;
font-style: inherit;
font-size: 14px;
font-family: inherit;
vertical-align: top;
background: transparent;
font: verdana, geneva, lucida, «lucida grande», arial, helvetica, sans-serif;
background-color: white;
}

Таким образом, все элементы на странице будут иметь свойства заданные в данном файле. Если необходимо, чтобы у какого-либо элемента свойства отличались от свойств по умолчанию, то их надо переопределить явно.

3. «Особенности» некоторых браузеров.

Однако, даже если веб мастер использует только стандартные возможности HTML, установил свои атрибуты по умолчанию для всех элементов, сайт все равно может выглядеть по разному в различных браузерах. Это происходит от того, что браузеры сами могут не соответствовать стандарту HTML. Браузеры, как и любое программное обеспечение, могут содержать ошибки. Эти ошибки, как правило, быстро исправляются, однако всегда существует вероятность, что у пользователя установлена не самая свежая версия браузера.
Так же возможно, что производители браузеров (особенно этим грешит MicroSoft) считают, что они лучше знают, как надо отображать тот или иной элемент.

Поскольку основной виновник проблем несовместимости со стандартом — это Internet Explorer, то было придумано множество возможных обходных путей, как заставить сайт в IE выглядеть так же, как и в других браузерах.

Самый распространенный способ — это условные комментарии для IE. Майкрософт, как будто зная о проблемах своего браузера, дала разработчикам способ, как выполнить HTML код только на специальной версии IE. Например, следующий код подключит специальный CSS файл для браузера IE версии 7 и выше: http://msdn2.microsoft.com/en-us/library/ms537512.aspx

Условные комментарии имеют один единственный недостаток. Страница, включающая в себя такие комментарии, не является валидной HTML страницей. Как видите, Майкрософт и тут нарушает стандарт.

Рекомендуем также

Loading…

Свежие статьи

Популярные статьи

Кроссбраузерная вёрстка сайта. Что это?

Навигация по статье:

Сегодня поговорим об одном из очень важных требований к вёрстке. Речь пойдёт о кроссбраузерности.

Что такое кроссбраузерная вёрстка?

Кроссбраузерность вёрстки предполагает что вёрстка страницы должна одинаково выглядеть во всех популярных браузерах. А именно Opera, Mozilla Firefox, Google Chrome, Safari, Internet Explorer, Яндекс браузер и другие. При этом особое внимание необходимо уделить такому браузеру как Internet Explorer (IE). Дело в том, что этот браузер портит жизнь веб-разработчикам уже много лет подряд. Так как он не понимает многих современных HTML тегов, CSS стилей и у него специфический подход к отображению некоторых CSS свойств, отличающийся от всех остальных браузеров.

Мало того, разные версии этого браузера могут по разному отображать одну и ту же страницу. Тут конечно всё зависит от сложность вёрстки и наличия в ней сложных элементов дизайна.

Если Вы планируете заказать вёрстку сайта у верстальщика, то обязательно уточняйте момент кроссбраузерности. И указывайте начиная с какой версии браузера IE должна поддерживаться вёрстка. Это позволит Вам избежать недопонимания и проблем в будущем.

На сегодняшний день актуальными являются версии 8, 9, 10

Для того чтобы Вам сделали вёрстку, которая будет нормально отображаться в IE начиная с версии 7 и выше, обычно указывают так «поддержка IE7+»

Будьте готовы к тому что за создание вёрстки, которая будет поддерживаться начиная с IE7 у Вас могут просить дополнительную плату, так как если вёрстка сложная, то такое требование значительно увеличит объём работы верстальщику.

Как добиться кроссбраузерности?

Если же Вы взялись верстать сайт самостоятельно и хотите чтобы он был кроссбраузерным и нормально поддерживался IE разных версий, то вот Вам несколько советов:

  1. Постарайтесь не использовать теги HTML5 так как IE старых версий их не понимает и отображает непонятно что, а если используете, то не забудьте подключить специальный плагин, который научит IE понимать теги HTML5.
    Вот ссылка на скачивание этого плагина: плагин HTML5 для Internet Explorer
  1. Избегайте использования псевдоклассов. Большую часть псевдоклассов CSS3 IE не поймёт и искусственно научить его понимать их (как в случае с тегами HTML5) у Вас не получится.
    Особенно это касается псевдоклассов :first-child, :last-child и им подобных.
  1. Не используйте псевдоэлементы CSS3 (:before, :after). Причина та же что и в случае с псевдоклассами. Мало того, тут к «любимому» браузеру веб-разработчиков IE присоединяется браузер Safari, который используется на устройствах Apple, и у которого тоже проблемы с корректным отображением псевдоэлементов.
  2. Тестируйте вёрстку не отходя от кассы. Делайте кроссбраузерное тестирование не в конце вёрстки, а на каждом этапе. Например, сверстали шапку сайта – сразу проверили во всех браузерах, потом блок контента и так далее. Иначе в конце вёрстки Вас может ждать неприятный сюрприз, который Вам скорее всего преподнесёт всеми любимый Internet Explorer, а может и не только он.
  3. Табличная вёрстка в помощь. Если вёрстка не сложная и адаптивность не нужна, то есть смысл сделать её табличной. Так как это значительно упростит процесс создания кроссбраузерной вёрстки.
    Более подробно о блочной и табличной вёрстках написано здесь.
  4. Используйте css хаки для разных браузеров. Будьте готовы к тому, что разные браузеры по разному отображают шрифты и рассчитывают размеры блоков. Особенно это касается браузера Mozilla Firefox, который за счёт иного способа отображения шрифтов делает блоки на несколько пикселей шире чем другие браузеры.
    Для решения данной проблемы используются CSS хаки, которые дают возможность прописать стили для каждого браузера по отдельности.

К их использованию следует прибегать только в крайнем случае, так как есть риск что в следующей версии браузера для которого вы прописываете CSS хак этот хак может не поддерживаться.

На этом у меня всё. Если у Вас есть вопросы или уточнения по данной статье я буду рада если Вы напишите их в комментариях.

Желаю Вам удачной вёрстки, качественных сайтов и высокой посещаемости.

До встречи в моих новых статьях.

С уважением Юлия Гусарь

Лучшие советы по созданию кросс-браузерного и идеального веб-сайта

Кроссбраузерная совместимость важна, чтобы ваш веб-сайт мог открываться во всех браузерах, таких как Mozilla Firefox, Google Chrome, Opera, Safari и Internet Explorer. В этом сообщении блога мы поговорим о важности кроссбраузерности веб-сайта и о некоторых основных шагах по его созданию.

Как профессиональный веб-разработчик, вы должны хорошо осознавать тот факт, что веб-сайта с организованным макетом и определенной структурой недостаточно, чтобы привлечь посетителей.Вместо этого он должен быть кроссбраузерным, чтобы обрабатывать единообразно во всех браузерах. Учитывая безупречные особенности разработки CSS, разработчики старательно перешли на CSS для создания кроссбраузерных дизайнов и макетов веб-сайтов.

Необходимо знать некоторые основы и терминологию, относящуюся к CSS, для создания макета веб-сайта, совместимого с кроссбраузерностью.

Что такое CSS?

CSS означает каскадные таблицы стилей, который является компьютерным языком и определяет представление документа, написанного с использованием языка разметки.Профессионалы могут использовать его для настройки макета веб-страницы, добавляя / изменяя цвета, стиль шрифта, размер, цвет, интервал, макет, цвет фона и многое другое. Преимущество работы с CSS так же, как и с HTML, поддерживается почти всеми браузерами.

Помимо этого, CSS также функционирует как описывающий элемент, который определяет отображаемые элементы на экране. Что наиболее важно, он может одновременно управлять макетами разных страниц в определенный момент времени.

Что именно делает CSS?

CSS преобразует веб-страницы, изменяя их шрифт, цвет, стиль содержимого, интервалы, макет и т. Д.Разработчики используют CSS для создания веб-страниц, совместимых с несколькими веб-браузерами. Эти настраиваемые веб-страницы настраивают макеты, которые можно единообразно видеть в веб-браузерах, таких как Mozilla Firefox, Internet Explorer, Google Chrome, Safari, Opera и т. Д.

А теперь давайте познакомимся с некоторыми жизненно важными советами и принципами создания кроссбраузерности, а также макета с точностью до пикселя с помощью CSS.

Советы по созданию кросс-браузерного макета веб-сайта с помощью CSS

Создание макета кроссбраузерно совместимого веб-сайта требует широкого использования новейших отраслевых практик.Ознакомьтесь с важными советами по созданию кросс-браузерного шаблона веб-сайта.

Сохраняйте простоту, сохраняя качество

Основная причина, по которой вам нужно сохранять простоту макета, заключается в том, что он сводит к минимуму возможность ошибок. Другими словами, если вы сохраните сложную верстку, то с большей вероятностью вы совершите ошибки. Когда мы говорим, что макет должен быть простым — это означает, что вы также должны обеспечить простоту нескольких факторов, таких как верхний колонтитул, нижний колонтитул, расположенные рядом столбцы и т. Д.

Использование каркасов

Перед тем, как приступить к созданию кроссбраузерно совместимого веб-сайта, целесообразно выбрать фреймворки для работы с некоторыми популярными фреймворками, такими как Bootstrap, Foundation или другие. Независимо от того, какой инструмент вы выберете, вам необходимо ознакомиться с ним, чтобы использовать его потенциальные преимущества. Использование этих инструментов позволит вам получить код стиля, упрощающий кросс-совместимость.

Вы также можете прочитать: Пошаговое руководство по преобразованию PSD в WordPress

Узнать Doctype

Когда дело доходит до Doctype, это первое, что объясняет HTML, который вы можете использовать на своем веб-сайте.Необходимо определить Doctype, который также известен как движок рендеринга, поскольку известно, что существует ряд браузеров с разными стандартами и правилами.

Проверка кода

Проверка кода — это то, что сохраняет большую актуальность, независимо от того, насколько лучше она выполняется. Ошибочный код имеет тенденцию отрицательно влиять на кросс-совместимость любого веб-сайта. Итак, для проверки вашего кода необходимо воспользоваться помощью валидаторов CSS и валидаторов W3C.

Тест в нескольких браузерах

При создании макета, совместимого с несколькими браузерами, необходимо убедиться, что он работает во всех браузерах. Вы можете рассмотреть такие браузеры, как Internet Explorer, Firefox, Safari, Opera и т. Д., Чтобы проверить свой храм и убедиться, что он безупречно работает во всех браузерах. Между тем, рекомендуется протестировать шаблон не менее 3–8 раз в этих браузерах.

Заключение —

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

Мы будем рады вашим комментариям и вопросам об этом сообщении в блоге. Отправьте нам свои мысли, заполнив контактную форму.

11 мощных инструментов для кроссбраузерного тестирования и тестирования визуального макета

Интерактивный браузер в реальном времени, адаптивный, визуальный макет, ведение журнала ошибок и многое другое…

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

Большинство владельцев продукта часто тестируют веб-приложение в нескольких любимых браузерах, используя высокую скорость Интернета, и, когда все выглядит нормально, они запускаются.

Это не нормально, если вы ориентируетесь на пользователей по всему миру и разрабатываете современные приложения.

Но вы можете спросить, как мне протестировать на сотнях браузеров и устройств по всему миру?

Это возможно без установки всех браузеров и покупки всех устройств. Возможно тестирование из облака!

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

LambdaTest

LambdaTest, новое облачное программное обеспечение для тестирования, которое позволяет вам тестировать следующее.

Интерактивное тестирование браузера в реальном времени — запустите виртуальную машину (виртуальную машину) в облаке с нужным браузером и устройствами для выполнения теста.

Существует более , 1400 браузеров, возможностей комбинирования, в которых вы можете провести тест.

  • Рабочий стол — Chrome, Firefox, Safari, Internet Explorer, Opera
  • Mobile — Samsung, Motorola, HTC, Google, iPhone, iPad, Amazon Kindle

И не только браузер, но вы можете выбрать запуск его на соответствующей ОС.

Давайте возьмем сценарий проблемы в реальном времени

Один из пользователей жалуется, что какая-то функция не работает при нажатии на нее. Пользователь пробует Яндекс на Mac версии 10.13.

Как бы вы устраняли неполадки?

Ну выбираем Яндекс и выбираем версию ОС. Вот и все, как видите, я пробовал запустить Geekflare.

Хорошая вещь в том, что вы можете полностью воспроизвести проблему, поскольку у вас есть полнофункциональный браузер, в котором вы можете взаимодействовать с приложением на локальном ПК.

Не останавливайтесь на достигнутом; вы можете сделать больше.

  • Вы можете интегрировать учетную запись LambdaTest с Slack, asana, Jira и Trello, чтобы отправлять данные теста для регистрации ошибок.
  • Запишите видео, чтобы отправить его клиенту или разработчику
  • Измените разрешение, как на локальном компьютере
  • Сделать снимок экрана

Как это круто это?

Снимок экрана в один щелчок — сделайте снимок экрана нескольких браузеров / устройств данной веб-страницы одним щелчком мыши.

Полезно, если вы просто хотите посмотреть, как выглядит целевая страница перед запуском продукта на разных устройствах.

Отзывчивый тест — проверьте, как ваша страница отображается в Google Pixel, Samsung Galaxy, iPhone Plus, One Plus и многих других с разным разрешением.

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

Умное сравнение — сравните два изображения, чтобы быстро определить проблему, связанную с размером отступа, значком, цветом, макетом, текстом, положением элемента.

LambdaTest выглядит многообещающим, чтобы проверить сайт на наличие проблем. Он основан на облаке, поэтому вы можете масштабировать его по ходу работы и начать работу за БЕСПЛАТНО .

Лаборатория соуса

Тестируйте свои веб-сайты и приложения во многих комбинациях мобильных и настольных браузеров или операционных систем в облаке с помощью Sauce Labs.

Он обеспечивает кроссбраузерное тестирование, чтобы дать вам уверенность в цифровых технологиях, делая тестирование надежным, простым и быстрым на протяжении всего процесса разработки вашего программного обеспечения.Это поможет вам избавиться от хлопот с обслуживанием и позволит сосредоточиться на тестировании приложений.

Вы можете выполнять тесты параллельно в различных комбинациях ОС и браузеров, чтобы получить скорость до 10 раз. Запишите видео или сделайте снимки экрана своих тестов, чтобы выявлять ошибки и быстрее их исправлять. Файлы метаданных и журналов селена для каждого теста упрощают обмен результатами с командами разработчиков.

Sauce Labs поставляет последние версии в течение 48 часов после выпуска, чтобы приложения работали на новейших платформах.Расширенная отладка предлагает сетевые вызовы и журналы консоли браузера, чтобы получить полное представление о производительности браузера и сетевых запросах. Это также поможет быстро провести анализ первопричин.

Кроме того, прокси-сервер Sauce Connect помогает тестировать приложения и данные из-за брандмауэра в облаке Sauce Labs без проблем с настройкой аппаратной VPN. Убедитесь, что веб-приложения работают на мобильных симуляторах и эмуляторах вместе с настольным компьютером.

Кроме того, интегрируйте его с различными решениями, такими как MSFT VSTS, Bamboo, Jenkins, Circle CI, TeamCity и Travis CI, для настройки, управления и просмотра результатов.Sauce Labs располагает собственными центрами обработки данных для повышения безопасности и уменьшения количества ошибок при тестировании. Получите множество дополнительных функций, таких как тестирование производительности Sauce, мощная аналитика тестов, автономное тестирование Sauce, IPSEC VPN, неограниченное количество пользователей, единый вход, обучение и управление командой.

Начните работу с комплексным решением для тестирования по стартовой цене 39 долларов в месяц или воспользуйтесь помощью их команды, чтобы выбрать лучший план для вас.

Просмотр

Получите браузер с функцией Browserling и начните кроссбраузерное онлайн-тестирование за пять секунд.С помощью снимков экрана вы можете взаимодействовать с браузерами, чтобы почувствовать, что браузер установлен на вашем компьютере.

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

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

Используйте туннели SSH для обратного прокси-сервера вашего локального сервера или хоста в Browserling. Все соединения между Browserling и вами зашифрованы с помощью SSL для обеспечения безопасности. Вы также можете анонимно протестировать браузер для большей конфиденциальности.

Более того, вы можете безопасно пользоваться Интернетом, не беспокоясь о том, что вы можете быть заражены троянами или вирусами, так как все браузеры работают в инфраструктуре Browserling.Он работает на JavaScript и HTML5, что хорошо работает.

Расширения

Browserling позволяют выполнять кросс-браузерные тесты одним щелчком мыши по вашим веб-сайтам. Вы можете добавить в закладки свои любимые браузеры, чтобы использовать их одним щелчком мыши в любое время. Автоматизируйте встроенные браузеры с помощью аккуратного API в вашем приложении по запросу.

Попробуйте Browserling перед покупкой с некоторыми ограничениями или заплатите за план, который вы хотите выбрать, всего за 19 долларов в месяц для большей гибкости.

BrowserStack Live

Миллионы разработчиков и тестировщиков QA используют BrowserStack Live для доступа к более чем 2000 устройствам и браузерам и повышения удобства работы пользователей.Для получения точных результатов запускайте кросс-браузерные тесты на устройствах iOS и Android.

Вы также можете использовать инструмент тестирования для определения старых и новых версий Edge, IE, Firefox, Chrome и Safari в ваших системах macOS и Windows. Кроме того, тестовые веб-сайты, размещенные в промежуточных средах и на внутреннем устройстве разработки или за брандмауэрами, без какой-либо конфигурации и нулевых настроек.

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

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

Для тестирования из любого места требуется только подключение к Интернету. Используйте различные разрешения экрана от 800 x 600 до 2048 x 1536.Вы всегда найдете быстрый список во время сеанса тестирования. Вы можете переключаться между разрешениями или изменять размер браузера и позволять сеансу обновляться без каких-либо перерывов.

Проверьте поведение ваших веб-сайтов в разных местах с помощью геолокации IP и GPS. Более того, вы можете имитировать местоположение, используя частные и безопасные IP-адреса, или настроить любое реальное устройство на местоположение GPS.

Подпишитесь на бесплатную пробную версию или выберите любой план от 25 долларов США за пользователя в месяц.

Апплитолы Глаза

Applitools Eyes — это интеллектуальная платформа для автоматизированного тестирования, на которой работает Visual AI.Он копирует человеческий мозг и глаза, чтобы выявлять визуальные и функциональные регрессии с помощью компьютерного зрения на базе искусственного интеллекта.

Включенные в него тесты работают стабильнее в 3,8 раза, в 5,8 раза быстрее и выявляют на 45% больше ошибок по сравнению с традиционным функциональным тестированием. Короче говоря, вы получите преимущество стабильности и сверхбыстрой скорости кросс-браузерного тестирования нового поколения с помощью Ultrafast Test Cloud.

Applitools Eyes легко интегрируется с тестами, поэтому вам не нужно создавать новый или изучать новые фреймворки.Он захватывает и анализирует весь экран приложения с помощью одного фрагмента кода.

Он также поддерживает почти все основные языки и среды автоматизированного тестирования, такие как Cypress, Protractor, Selenium IDE, Testcafe, Selenium и WebdriverIO. Кроме того, инструмент мгновенно устраняет аналогичные различия, используя сложные алгоритмы.

Он также покажет только явные различия после создания кратких отчетов. У вас есть возможность отклонить или одобрить изменения, чтобы они применялись ко всем аналогичным изменениям во всем наборе тестов.Анализ первопричин обеспечивает беспрепятственный и быстрый просмотр всех дефектов в DOM.

Он показывает различия, которые имеют значение и помогают в отладке. Получите возможность многовариантного и A / B тестирования. Вы можете просматривать управление тестированием и аналитику на оптимизированных информационных панелях с помощью Smart Assist на базе искусственного интеллекта. Applitools Eyes интегрируется со Slack, Jira, электронной почтой и т. Д. Кроме того. вы также можете интегрировать его с системами управления версиями, такими как GitLab, GitHub и Bitbucket.

Призрачный инспектор

Ghost Inspector упрощает запуск тестирования браузера и сопровождение каждого теста с помощью редактора без кода.Вы можете корректировать шаги теста по мере изменения вашего приложения и веб-сайта. Добавляйте новые шаги, удаляя старые, и быстро меняйте порядок шагов с помощью функции перетаскивания.

Выполняйте те же действия, как щелчок, перетаскивание, назначение и т. Д., Как пользователь. Он использует шаги JavaScript, которые позволяют обрабатывать сложные ситуации с помощью настраиваемой логики кода. Имейте в кармане возможность самовосстановления с помощью селекторов резервного копирования XPath и CSS.

Подтвердите текст, URL-адреса и многое другое, чтобы гарантировать правильное выполнение теста.Сохраните повторяемые последовательности шагов в качестве импортируемого модуля. Затем запустите тесты с разными версиями Firefox и Chrome. Вы можете протестировать адаптивный дизайн, протестировав его на экранах разных размеров, включая планшеты и мобильные устройства. Ghost Inspector имеет более 16 центров обработки данных по всему миру, поэтому в вашем тесте будут использоваться локальные IP-адреса из ближайшего региона.

Запланируйте определенные дни и время или интервалы для непрерывного оповещения и мониторинга. Снимок экрана делается после каждого запуска теста для сравнения с предыдущим базовым показателем, чтобы узнать об изменениях.Ghost Inspector позволяет запускать тесты параллельно. Он имеет множество официальных плагинов и API для большей гибкости.

Стоимость использования множества функций в вашем аккаунте составляет 89 долларов в месяц.

Кроссбраузерное тестирование

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

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

Автоматическое тестирование — используйте Selenium и Appium в облаке для автоматизации тестирования. Кроссбраузерное тестирование управляет инфраструктурой, поэтому вы просто сосредотачиваетесь на сценарии тестирования.

Если вы новичок в Selenium, я бы порекомендовал этот курс построения фреймворка.

Визуальное тестирование — автоматизировать создание снимков экрана с помощью API, выполнить визуальное регрессионное тестирование. Создание снимка экрана также возможно для приложения, которое находится за брандмауэром или экраном входа в систему.

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

CBT готов к работе, и вы можете начать ее работу с БЕСПЛАТНОЙ пробной версией.

В качестве альтернативы LambadaTest и CrossBrowserTesting вы можете попробовать следующее для кросс-браузерного тестирования.

TestingBot

TestingBot существует уже более девяти лет и ежемесячно выполняет более 6 миллионов автоматических и реальных тестов.

В нем множество функций, которые помогут улучшить ваш продукт, например:

  • Записывайте и воспроизводите свои действия в разных браузерах
  • Тест производительности приложения и веб-сайта
  • Автоматическое тестирование на физических устройствах IOS и Android
  • Различные интеграции

Он поддерживает автоматическое и живое тестирование, позволяя тестировать и отлаживать свой веб-сайт или мобильное приложение в интерактивном режиме. Кроме того, он тестирует более 3200 браузеров и множество различных устройств, чтобы убедиться в точности результатов.

Testsigma

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

Он использует более 2000 реальных браузеров Android, iOS и Desktop для проведения кросс-браузерных тестов, и, что интересно, он использует одну платформу как для функционального, так и для визуального тестирования. Для них это отлично работает, что помогло им привлечь в качестве клиентов некоторые ведущие компании по всему миру.

Необычной особенностью Testsigma является возможность запускать параллельные тесты в разных средах, чтобы сократить время, которое вы тратите. Это также означает, что вы получите результаты тестов намного раньше.

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

Кобитон

Kobiton Visual Testing — это инструмент, который гарантирует, что ваше приложение будет выглядеть и работать должным образом на всех устройствах.

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

Он также сравнивает UX вашего мобильного приложения с 50 лучшими приложениями, чтобы помочь улучшить ситуацию и устранить все, что не способствует его развитию. Проще говоря, он предлагает наилучшие возможные методы для обеспечения наилучшего взаимодействия с пользователем.

Вы можете начать работу с Kobiton’s Visual Testing совершенно бесплатно.

IE TAB

IE TAB, который насчитывает более 4 миллионов пользователей по всему миру, представляет собой мощный и безопасный инструмент, который можно использовать с Chrome для тестирования приложений и веб-страниц.

Он позволяет использовать Java, Silverlight, ActiveX, Sharepoint и другие среды при тестировании различных версий Internet Explorer. Вы можете использовать это расширение таким образом, чтобы запускать Internet Explorer внутри Chrome.

Загрузите его прямо сейчас и начните тестирование без проблем.

Заключение

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

Принципы кросс-браузерного кодирования CSS — Smashing Magazine

Краткое резюме ↬ Можно утверждать, что в веб-дизайне нет цели более удовлетворительной, чем сделать так, чтобы красивый и интуитивно понятный дизайн выглядел одинаково одинаково во всех используемых браузерах.К сожалению, обычно считают, что достичь этой цели практически невозможно. Некоторые даже заявили, что в идеальной кроссбраузерности нет необходимости. [Ссылки проверены и исправлены 6 марта 2017 г.]

Хотя я согласен с тем, что создание единообразного опыта для каждого пользователя в каждом браузере (если оставить в стороне мобильные платформы) никогда не произойдет для каждого проекта, я считаю, что почти точный кроссбраузерный опыт достижим во многих случаях .

Наша цель как разработчиков — не просто заставить его работать в каждом браузере; наша цель должна состоять в том, чтобы заставить его работать в каждом браузере с минимальным объемом кода, чтобы в будущем обслуживание веб-сайта могло проходить гладко.

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

Больше после прыжка! Продолжить чтение ниже ↓

Понимание модели бокса CSS

Это одна из первых вещей, с которой вам следует полностью ознакомиться, если вы хотите получить кроссбраузерную разметку с очень небольшим количеством приемов и обходных путей. . К счастью, блочная модель не является трудной для понимания и в целом работает одинаково во всех браузерах, за исключением обстоятельств, связанных с определенными версиями Internet Explorer (подробнее об этом позже).

Модель блока CSS отвечает за вычисление:

  • Сколько места занимает элемент уровня блока
  • Перекрываются или сворачиваются границы и / или поля
  • Размеры ящика
  • В некоторой степени, положение блока относительно другого содержимого на странице.

Коробочная модель CSS имеет следующие основные правила:

  • Элементы уровня блока по существу прямоугольные (как и все элементы на самом деле)
  • Размеры блочного элемента рассчитываются по ширине, высоте, заполнению, границам и полям
  • Если высота не указана, высота элемента блока будет равна его содержанию, плюс заполнение (если нет числа с плавающей запятой, о чем см. Ниже).
  • Если ширина не указана, неплавающий прямоугольник будет расширяться, чтобы соответствовать ширине своего родительского элемента без заполнения (подробнее об этом позже)

Некоторые важные вещи, о которых следует помнить при работе с элементами уровня блока:

  • Если для блока задана ширина «100%», у него не должно быть полей, отступов или границ, в противном случае он будет переполнять свой родительский
  • Смежные по вертикали поля могут вызвать некоторые сложные проблемы со сворачиванием, которые могут вызвать проблемы с разметкой
  • Элементы, расположенные относительно или абсолютно, будут вести себя по-разному, подробности чего обширны и выходят за рамки данной статьи.
  • Приведенные выше правила и принципы сформулированы в предположении, что страница, содержащая элементы уровня блока, отображается в стандартном режиме (этот пункт был добавлен позже после просмотра опубликованных комментариев).


Модель коробки, отображаемая с помощью Firebug в Firefox

Разница между блочным и встроенным

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

Изображение ниже иллюстрирует разницу между блочными и встроенными элементами:

Вот несколько основных правил, которые отличают блочные элементы от встроенных:

  • Блочные элементы по умолчанию естественным образом расширяются по горизонтали, чтобы заполнить их родительский контейнер, поэтому нет необходимости устанавливать ширину «100%».
  • Блочные элементы по умолчанию начинаются с самого левого края родительского блока, ниже любых предыдущих блочных элементов (если не используются поплавки или позиционированные элементы; см. Ниже)
  • Встроенные элементы игнорируют настройки ширины и высоты
  • Встроенные элементы объединяются с текстом и имеют типографские свойства, такие как пробел , размер шрифта и межбуквенный интервал
  • Встроенные элементы могут быть выровнены с помощью свойства vertical-align , но блочные элементы не могут
  • У встроенных элементов будет некоторое естественное пространство под ними, чтобы разместить текстовые элементы, которые опускаются ниже линии (например, буква «g»).
  • Встроенный элемент станет блочным, если он перемещается

Общие сведения о перемещении и очистке

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

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

Вот некоторые важные вещи, о которых следует помнить при перемещении и очистке элементов:

  • Плавающие элементы удаляются из потока других неплавающих элементов уровня блока; Другими словами, если вы перемещаете блок влево, конечный абзац (уровень блока), который не перемещается, появится за плавающим элементом в стеке, а любой текст внутри абзаца (встроенный уровень) будет обтекать плавающий объект
  • Чтобы содержимое обтекало плавающий элемент, он должен быть либо встроенным, либо перемещаться в том же направлении
  • Плавающий элемент без заявленной ширины будет сжиматься до ширины его содержимого, поэтому обычно лучше иметь заданную ширину для плавающего объекта.
  • Если элемент блока содержит плавающие дочерние элементы, он «схлопнется», что потребует исправления.
  • Элемент, который «очищен», не будет обтекать плавающие элементы над ними в документе.
  • Элемент, который очищен и перемещен, очистит себя только от элементов, которые идут до, а не после
  • .

Используйте Internet Explorer в первую очередь (или не используйте)

Обратите внимание, что команда Smashing Magazine настоятельно не рекомендует сначала разрабатывать веб-сайты в Internet Explorer.По нашему мнению, сайты должны разрабатываться в «современных» браузерах, сначала со стандартами, а затем настраиваться для версий Internet Explorer с ошибками. Приведенный ниже совет не отражает мнение редакционной группы Smashing. Согласны или не согласны? Прокомментируйте эту статью!

Большая часть того, что я обсуждал до сих пор, касается принципов кодирования и компоновки CSS. Этот принцип больше связан с привычками и предпочтениями большинства дизайнеров. Хотя нам может не понравиться использовать IE6 и IE7 в нашей повседневной работе в Интернете, когда приходит время создавать клиентский проект с нуля, одна из лучших вещей, которые вы можете сделать, — это протестировать свой макет в этих браузерах, находящихся на ранней стадии разработки .Возможно, вы даже захотите открыть отдельную версию IE6 или IE7 и просто начать разработку в этом браузере.

Конечно, у вас не будет доступа к таким инструментам, как Firebug, но обычно для CSS (особенно на ранних этапах разработки) Firebug вам не понадобится. Намного легче сначала заставить макет работать в IE6 и IE7, а затем исправить его для других браузеров, чем делать это наоборот. Если дождаться конца процесса разработки, чтобы открыть IE6 и / или IE7, это может вызвать некоторые, если не все, из следующих проблем:

  • Потребуется несколько хаков, требующих отдельных таблиц стилей для разных версий IE, что сделает код раздутым и менее удобным в обслуживании, а также замедлит работу веб-сайта
  • Макет в некоторых местах, возможно, придется переделывать, увеличивая время разработки
  • Время тестирования будет увеличиваться, иногда экспоненциально, оставляя меньше времени для более важных задач
  • Макет в других браузерах не будет таким, как в IE6 и IE7

Я не ожидал, что разработчики будут использовать Internet Explorer так агрессивно для личных проектов, веб-приложений или другой работы, не связанной с клиентом.Но для корпоративных клиентов , чья база пользователей в основном работает с Internet Explorer, этот совет может предотвратить множество головных болей при правильной работе и определенно сделает кроссбраузерность гораздо более вероятной .

Иногда рассмотрение проблем IE как «досадных ошибок» может создать ненужный негатив и затруднить разработку и дальнейшее обслуживание. Работа с IE — это реальность для дизайнеров и разработчиков, поэтому просто рассматривайте его проблемы, как любую проблему с CSS, и создавайте оттуда.

Основные проблемы Internet Explorer

Если вы собираетесь начать с IE в своей разработке или, по крайней мере, проверить свой макет в IE на ранней стадии, тогда вы должны понимать, с чем у Internet Explorer (обычно версий 6 и 7) есть проблемы или каковы его ограничения. являются.

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

  • IE6 станет проблематичным при чрезмерном использовании поплавков, что приведет к (как ни парадоксально) исчезновению содержимого или дублированию текста
  • IE6 удвоит маржу для плавающих элементов на стороне, которая совпадает с направлением плавающего элемента; настройка дисплея : встроенный часто исправляет это
  • В IE6 и IE7, если у элемента нет макета, это может вызвать ряд проблем, в том числе не отображается фон, неправильно сжимаются поля и т. Д.
  • IE6 не поддерживает свойства CSS на основе минимума и максимума, такие как min-height или max-width
  • IE6 не поддерживает фиксированное позиционирование фоновых изображений
  • IE6 и IE7 не поддерживают много альтернативных значений для свойства display (e.г. встроенная таблица , ячейка таблицы , строка-таблица и т. Д.)
  • Вы не можете использовать псевдокласс : hover для любого элемента IE6, кроме привязки ( )
  • Некоторые версии IE мало поддерживают определенные селекторы CSS (например, селекторы атрибутов, дочерние селекторы и т. Д.).
  • IE версий 6-8 слабо поддерживает CSS3, но есть обходные пути.

Есть еще много ошибок, проблем и несоответствий, которые могут возникнуть в Internet Explorer, но они, вероятно, являются наиболее распространенными и наиболее важными, о которых следует помнить при попытке создать кроссбраузерную среду.Я призываю всех разработчиков провести дальнейшее исследование многих проблем , о которых я упомянул выше, чтобы иметь более точное представление о том, какие проблемы могут вызывать эти проблемы и как их решать.

Некоторые вещи никогда не будут выглядеть одинаково

Как уже упоминалось, создание одного и того же визуального и функционального интерфейса в любом браузере возможно, но маловероятно. Вы можете получить макет и расположение элементов, близких к идеальному по пикселям, но есть , некоторые вещи, которые находятся вне контроля разработчика .

Формы часто будут отличаться

Обсуждение всех различий и причуд, возникающих с элементами формы в разных браузерах и платформах, может быть отдельной статьей, поэтому я не буду вдаваться в подробности здесь. Однако простой визуальной демонстрации должно быть достаточно, чтобы донести суть дела.

Взгляните на изображение ниже, которое отображает элементов элементы отображаются по-разному в разных браузерах

Некоторыми элементами формы можно управлять визуально.Например, если клиент требует, чтобы кнопка отправки выглядела одинаково во всех браузерах, это не проблема, вы можете просто использовать изображение вместо стандартного , что аналогично < select> элементов, в разных браузерах будут выглядеть по-разному.

Но другие элементы формы, такие как переключатели, поля textarea и вышеупомянутые элементы