CSS Media Запросы и реклама

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

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

1 ответ

По сути, это уже встроено в Twitter Bootstrap. Bootstrap имеет несколько классов под названием .visible- а также .hidden- которые используются в сочетании с phone, tablet а также desktop показывать и скрывать элементы на разных устройствах.

Затем вы просто включите X различных версий вашего баннера, например:

<div class="ads">
    <img class="visible-phone" src="smallest.png"/>
    <img class="visible-tablet" src="medium.png"/>
    <img class="visible-desktop" src="large.png"/>
</div>

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

@media (min-width: 768px) and (max-width: 979px) {
  .visible-tablet {
    display: block;
  }
  ...
  .visible-desktop {
    display: none;
  }
Другие вопросы по тегам