Jump to content
  • 0

В каком направлении копать для адаптивного скроллируемого фона?


NDanilov2015
 Share

Question

Добрый день! Есть такая задача - в заготовке для сайта имеется картинка очень большой ширины (около 4000 px). Её необходимо сделать адаптивным фоном (к размеру окна браузера/экрана компьютера), выводить центральную часть с несколькими товарами которые "вшиты" в картинку - а остальное пустить под возможность горизонтального скроллинга. (На саму фоновую картину должен быть пристыкован атрибут usemap, сообщенный с "картой", ведущей на страницы конкретных товаров).

Пока что удавалось реализовать лишь адаптивность, но без скроллинга (и кажется, в таком варианте и map не пристыковать):
 

.box{
background: url('../img/1.jpg') no-repeat;
background-position: center center;
background-attachment: fixed;

background-size: cover;
}

(.box - это главный контейнер вложенный в <body>). Скроллингу мешает background-attachment, выставленное в fixed. Но стоит убрать fixed, тогда исчезает адаптивность...

Как грамотно решается такая задача?) Может здесь надо задействовать jQuery (и как именно)?

PS. Заранее спасибо!

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

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

В общем, придётся идти в немного другом направлении, чем я думал - никаким background-стилем это не сделать, видимо надо просто брать <img> с атрибутом usemap, вкладывать его в <div> и с этим как-то колдовать:

<body>

<div class="box" id="agregat">

    <div id="img-box">
		<img src="img/1.jpg" style="display: block;" alt="" usemap="#Map" />
	</div>
  
<map name="Map" id="Map">
    <area alt="" title="" href="#" shape="poly" coords="55,744,234,743,236,869,60,877" />
    <area alt="" title="" href="#" shape="poly" coords="243,745,409,747,411,869,249,871" />
    ....
И так далее

К сожалению, на jsfiddle не прицепить саму картинку чтобы это работало с кодом - но ключевой код выложил как он выглядит на данную минуту (верхняя часть и в HTML, и в CSS самое главное):
https://jsfiddle.net/NDanilov2016/c6271jcm/2/

Спасибо за содействие!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By DrRobotGranata
      Всем привет! Задача стоит следующая. Есть 8 элементов (IMG). Т.е. одна целая картинка разрезана на 8 частей(рамка)
      Нужно сверстать гибкой версткой макет, где эти 8 кусочков будут одним целым( рамкой) а внутри можно будет размещать любой текс, рамка по высоте подстраивается под текс, по ширине на всю ширину окна.
      Кручу верчу, все никак не получается. Подскажите в какую сторону думать. Каждый Img в отдельный div и все дивы в общий контейнер? и дальше как
    • By vladdvin
      Верстаю макет с Фигмы - https://www.figma.com/file/2rdy1qjBTl7D6BAC8S4qlf/Webovio?node-id=0%3A1. Наверстал
      CSS
      В результате отображается следующая картинка

      в режиме инструментов разработчика. А вне режима вообще отображает

      Подскажите как добиться отображения текста как на макете.
    • By Hinn
      Всем приветик, начинающий фрилансер. Ищу первые заказы в данной сфере. Занимаюсь:
      • На малом уровне версткой;
      • Хорошо разбираюсь в таких CMS: как Wordpress и Tilta - легко и быстро разработаю одно страничные, многостраничные сайты, интернет-магазины (могу как дорабатывать, так и создания с нуля, так же занимаюсь переносом одного сервера на другой);
      • Увлекаюсь разработкой логотипов (логотипы с нуля, доработка логотипа, рисование логотипа по эскизу).
      Готов заниматься работой за любую плату. Так же присутствует портфолио, но за частую людям интересно когда о тебе есть отзывы. Поэтому пришел сюда за практическим опытом, и поиском постоянной работы.
      Использую:
      - Верстка: (HTML5/CSS3), верстаю из Figma, Photoshop, illustrator.
      - Разработка сайта: (CMS WordPress, Tilta).
      - Разработка логотипа: (Photoshop, illustrator)
      Если не знаю чего-то необходимого для Вашего проекта\работы -- обязательно разберусь (все-таки начинающий фрилансер).

      Если вы разработчик и вам некому спихнуть рутинную работу - я с радостью возьму её на себя;

      телеграмм: HinnWork;
      почта: balistic.baty@gmail.com

      Открыт для любых предложений. 
    • By qqruz
      Мне нужен код для автоматической публикация последних видео с нескольких каналов ютюб, что бы они шли последовательно. Я перерыл весь интернет и нечего не нашел, сам тоже пытался написать, но из-за слабого знания языка и малого количества видео не могу. Надеюсь на чью-то поддержку.
    • By MultiGramen
      Есть тестовый сайт: http://multigramen.ru/
      Между картинкой и меню создался какой-то белый отступ, и я не могу удалить его, чтобы элементы приклеились друг ко другу:

      Если вырезать следующий код:
      <a class="header_logo"> <img class="header_photo" src="img/header.png" width="100%"> </a> то меню приклеивается и всё в порядке, хотя в CSS, по сути, нет отступов, которые мешались бы:
       
      .header_logo { flex:0 0 40px; } .header_photo { display:none; }
      Сайт имеет мобильную версию. Код сейчас разбит на два медиа-запроса: max-width:767px и min-width : 768px

      Помогите понять, как убрать этот пробел, не затронув другие элементы. Уже несколько дней ковыряюсь с этой проблемой, даже в коде запутался..
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy