Задать вопрос

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

Вот есть такой слайдер. С пк он выглядит нормально, а когда переключаюсь на мобилки, то изображения все выглядят по разному.
<div class="all">
    <input checked type="radio" name="respond" id="desktop">
       <article id="slider">
          <input checked type="radio" name="slider" id="switch1">
          <input type="radio" name="slider" id="switch2">
          <input type="radio" name="slider" id="switch3">
          <input type="radio" name="slider" id="switch4">
             <div id="slides">
                <div id="overflow">
                   <div class="image">
                      <article><img src="image/may.jpg"></article>
                      <article><img src="image/janyar.jpg"></article>
                      <article><img src="image/cheese.jpg"></article>
                      <article><img src="image/rey.jpg"></article>
                   </div>
                  </div>
               </div>
               <div id="controls">
                 <label for="switch1"></label>
                 <label for="switch2"></label>
                 <label for="switch3"></label>
                 <label for="switch4"></label>
               </div>
               <div id="active">
                 <label for="switch1"></label>
                 <label for="switch2"></label>
                 <label for="switch3"></label>
                 <label for="switch4"></label>
               </div>
           </article>
        </div>

/*Слайдер*/
#slider { /*положение слайдера*/
    position: relative;
	text-align: center;
    top: 10px;
}

#slider{ /*центровка слайдера*/
	margin: 0 auto;
}

#slides article{ /*все изображения справа друг от доруга*/
	width: 20%;
	float: left;
}

#slides .image{ /*устанавливает общий размер блока с изображениями*/
	width: 500%;
	line-height: 0;
    height: 100px;
}

#overflow{ /*сркывает все, что находится за пределами этого блока*/
	width: 100%;
	overflow: hidden;
    max-height: 500px;
}

article img{ /*размер изображений слайдера*/
	width: 100%;
}

#desktop:checked ~ #slider{ /*размер всего слайдера*/
	max-width: 960px; /*максимальнная длинна*/
}

label, a{ /*при наведении на стрелки или переключатели - курсор изменится*/
	cursor: pointer;
}

.all input{ /*скрывает стандартные инпуты (чекбоксы) на странице*/
	display: none;
}

/*позиция изображения при активации переключателя*/
#switch1:checked ~ #slides .image{
	margin-left: 0;
}

#switch2:checked ~ #slides .image{
	margin-left: -100%;
}

#switch3:checked ~ #slides .image{
	margin-left: -200%;
}

#switch4:checked ~ #slides .image{
	margin-left: -300%;
}

#switch5:checked ~ #slides .image{
	margin-left: -400%;
}

#controls{ /*положение блока всех управляющих элементов*/
	margin: -25% 0 0 0;
	width: 100%;
	height: 50px;
}

#active label{ /*стиль отдельного переключателя*/
	border-radius: 10px; /*скругление углов*/
	display: inline-block; /*расположение в строку*/
	width: 15px;
	height: 15px;
	background: #bbb;
}

#active{ /*расположение блока с переключателями*/
	margin: 23% 0 0;
	text-align: center;
}

#active label:hover{ /*поведение чекбокса при наведении*/
	background: #db0007;
	border-color: #777 !important; /*выполнение в любом случае*/
}

/*цвет активного лейбла при активации чекбокса*/
#switch1:checked ~ #active label:nth-child(1),
#switch2:checked ~ #active label:nth-child(2),
#switch3:checked ~ #active label:nth-child(3),
#switch4:checked ~ #active label:nth-child(4),
#switch5:checked ~ #active label:nth-child(5){
	background: #db0007;
	border-color: #db0007 !important;
}

#slides .image{ /*анимация пролистывания изображений*/
	transition: all 800ms cubic-bezier(0.770, 0.000, 0.175, 1.000);
}

#controls label:hover{ /*прозрачность стрелок при наведении*/
	opacity: 0.6;
}

#controls label{ /*прозрачность стрелок при отводе курсора*/
	transition: opacity 0.2s ease-out;
}
  • Вопрос задан
  • 103 просмотра
Подписаться 1 Средний 3 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы