#javascript #css #css-position
#javascript #css — код #css-позиция
Вопрос:
) Кажется, я хочу изобрести колесо, извините, если это так.
У меня есть изображение устройства, и я хочу сделать его анимированным (вероятно, не совсем подходящее слово). Я имею в виду, что я хочу сделать кнопки интерактивными в качестве частей меню. Представьте себе, что это пульт от телевизора или винилового проигрывателя (если нажать кнопку воспроизведения, винил начнет вращаться), но я не могу его нарисовать — только фотография штаб-квартиры — вид сверху. Некоторые элементы будут вращаться и вращаться при mouseevents. Хорошо, извините за много дополнительной информации, но, возможно, я совершенно не прав в своих усилиях.
Я прилагаю базовую скрипку.
<div id="wrapper" class="wrapper">
<img id="img1" src="https://i.ibb.co/FxF2Qhf/main.png" alt="main">
<div id="wrapper2" class="wrapper2">
<img id="img2" src="https://i.ibb.co/Hqbrv67/circle.png" alt="circle">
</div>
<div id="wrapper3" class="wrapper3">
<img id="img3" src="https://i.ibb.co/0FJj7Ys/rect.png" alt="rect">
</div>
</div>
Другими словами, я хочу вырезать элементы в Photoshop, а затем создать адаптивную «головоломку» в html. Круг и прямоугольник должны масштабироваться в соответствии с основным фоном и всегда оставаться на своих местах и должны быть функциональными элементами с событиями нажатия, поворота и т.д.
Я полагаю, что ширина и высота, позиционирование должны быть рассчитаны с помощью js? Но круги…
Еще раз извините, если это слишком просто и просто. С нетерпением жду, чтобы указать мне правильный путь)
Я попробовал холст (низкий опыт), карта / области не подходят из-за необходимости анимации и переходов
Ответ №1:
Вы должны установить относительный размер изображения, если хотите, чтобы они масштабировались пропорционально контейнеру. Установите ширину в относительном проценте от родительского контейнера.
.wrapper {
position: relative;
width: 100%;
max-width: max-content;
}
#img1 {
width: 100%;
}
#img2 {
position: absolute;
top: 28%;
left: 35%;
width: 28%;
}
#img3 {
position: absolute;
bottom: 6%;
left: 5%;
width: 32%;
}
<div id="wrapper" class="wrapper">
<img id="img1" src="https://i.ibb.co/FxF2Qhf/main.png" alt="main">
<img id="img2" src="https://i.ibb.co/Hqbrv67/circle.png" alt="circle">
<img id="img3" src="https://i.ibb.co/0FJj7Ys/rect.png" alt="rect">
</div>
Run code snippetHide resultsExpand snippet