Здравствуйте! Извините за вопрос, но я в CSS полный ноль. Есть страница с div и js. Задача js — скрывать изображение при клике. У меня никак не получается сделать так, чтобы они размещались горизонтально, вплотную друг к другу и чтобы при этом работал скрипт. Если убрать class="hide-on-click", то они будут горизонтально, но с интервалом между друг другом и js конечно же перестает работать. Если первый класс hide переименовать в hide-on-click, то при клике будут исчезать все картинки в нем, а нужно по отдельности. HTML: <div class="hide"> <div class="hide-on-click"><img width="350px" src="../image.png"></div> <div class="hide-on-click"><img width="350px" src="../image.png"></div> <div class="hide-on-click"><img width="350px" src="../image.png"></div> <div class="hide-on-click"><img width="350px" src="../image.png"></div> </div> Код (Javascript): <script> (function () { var elements = document.getElementsByClassName('hide-on-click'); for (var i = 0; i < elements.length; i++) { elements[i].addEventListener('click', function () { this.style.display = 'none'; }); } })(); </script>
Решение: Код (CSS): <style> .hide-on-click { background:lightgreen; width:350px; height:50px; display: inline-block; margin:0px; } </style>
@altblog Попробуйте так, под себя подправьте только. Код (CSS): img { width: 350px; height: 50px; } .hide-on-click { background: lightgreen; width: 350px; height: 50px; display: block; float: left; margin: 0px; } HTML: <div class="hide"> <div class="hide-on-click"><img src="..."></div> <div class="hide-on-click"><img src="..."></div> <div class="hide-on-click"><img src="..."></div> <div class="hide-on-click"><img src="..."></div> <div style="clear: both;"></div> </div> --- Добавлено --- @altblog Поскольку у вас изначально свойство display: inline-block было, то ваши промежутки между блоками div - это что-то вроде пробелов между словами в тексте. Вы можете просто добавить в стили следующее: .hide { font-size: 1px; } и убедиться в этом. Но не уверен, что так вообще кто-то делает.