2015-04-27 5 views
2

У меня есть баннер, который прокручивает несколько изображений с помощью модуля MD-Slider (JCarousel). Сайт реагирует, следовательно, будет 3 различных макетов любого изображения внутри баннера:CSS Замените изображение, обратившись к URL-адресу изображения

Normal Разрешение: Normal Mode

Layout для IPADS и больших таблеток: Smaller Resolution - iPad

Layout для мобильных устройств: Mobile layout

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

banner1.jpg 
banner1-iPad.jpg 
banner1-mobile.jpg 

Таким образом, «banner1» - это ключ. Это как мой DIV выглядит для нормального расположения:

<div class="md-slide-item slide-1" data-timeout="8000" data-thumb="http://xxxxxxxxxx.com/TestWebsite/sites/default/files/styles/md_slider_1_thumb/public/banner1.jpg?itok=y4RT2g4r" style="height: 268px; left: 0px; top: 0px; opacity: 1; display: block;"> 
    <div class="md-mainimg"> 
     <img class = "mdslider-img-tag" src="http://xxxxxxxxxx.com/TestWebsite/sites/default/files/banner1.jpg" alt="" style="width: 100%; height: auto; top: -59.3653846153846px; left: 0px;"> 
    </div> 
     <div class="md-objects" style="font-size: 99%;"> 
     </div> 
</div> 

Я могу использовать класс mdslider-img-tag заменить изображение в CSS, используя некоторые из литературы, указанной ниже:

1. https://css-tricks.com/replace-the-image-in-an-img-with-css/

2. http://www.emailonacid.com/blog/details/C13/a_slick_new_image_swapping_technique_for_responsive_emails

Однако, моя проблема заключается в том, чтобы ключ «banner1» внутри CSS перед добавлением -ip объявление или -mobile часть текста, чтобы отображалось правильное изображение для макета.

Есть ли элегантный способ достичь этого?

+1

Почему бы вам не сделать это с помощью фоновых изображений + медиа-запросов? – Stickers

+0

Как было предложено на @sdcr выше. Вместо этого вы можете использовать медиа-запросы. Это легче. Поэтому вам было бы намного легче. – Arvs

+0

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

ответ

1

Взгляните на Interchange by Zurb, это работает независимо от тем Фонда, но лучше всего работает с ними.

http://foundation.zurb.com/docs/components/interchange.html 

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

Смежные вопросы