Прежде чем пометить это, как уже было сказано, пожалуйста, прочитайте весь сценарий. Спасибо
КРАТКАЯ ВЕРСИЯ:
Просто чтобы четко заявить, чего я пытаюсь достичь, вот страница https://www.facebook.com/MercedesBenzPolska/, и я хочу добавить границу к целевому элементу (на котором я нахожусь), будь то <div>
или <img>
или <p>
, без встряхивания
ПОДРОБНАЯ ВЕРСИЯ
Webpage in question
: любая из страниц Facebook.
Requirement
: перемещение курсора на элемент должно добавить границу к целевому элементу [только при наведении, поэтому временная граница не постоянна]. Постоянная граница будет добавлена ТОЛЬКО если я нажму на этот элемент. [Просто, если я наведу курсор на элемент, он будет выделен, скажем, розовой рамкой, и только когда я нажму на него, будет добавлена зеленая рамка]
Initial problem
: добавление границы для элементов при наведении сделает структуру всей страницы шаткой, поскольку я постоянно добавляю и удаляю границу. Для этого я добавил прозрачную границу размером 1 пиксель ко всем элементам страницы, а при наведении измените цвет границы с прозрачного на розовый; таким образом, не шаткий.
Present problem
: вышеупомянутое решение работало для всех страниц, пока я не наткнулся на страницу Facebook. Оказывается, добавление начальной границы в 1 пиксель полностью нарушает структуру, то есть внешний вид страницы. DIV перемещаются из одного места в другое.
Как мне теперь решить мою первоначальную проблему? Есть ли способ, например, применить отрицательное поле или границу, чтобы добавление дополнительной границы в 1 пиксель не изменило структуру страницы? Я не знаю, я просто предлагаю. Просьба помочь
[СКРИНШОТЫ]
1. это когда страница загружается [без применения границы]
![enter image description here](https://i.stack.imgur.com/k81EO.png)
2. Теперь при наведении курсора на изображение, содержащее элемент div, то есть при добавлении границы на 1 пиксель к элементу hover, элементы div перемещаются тут и там
![enter image description here](https://i.stack.imgur.com/0HSTs.png)
![enter image description here](https://i.stack.imgur.com/mmRZS.png)
css Я использую
* { border: 1px solid transparent !important;}
// при загрузке страницы
.hover-selected{ border: 1px solid #e42a78 !important;}
// на границе при наведении
.option-selected:hover { border: 3px solid #529c56 !important;cursor: default;}
// когда выбрана опция
Изображения и css отражают одну и ту же проблему, прозрачная граница 1px по умолчанию нарушает css страницы, и если я этого не делаю, приложение при наведении границы становится шатким, а css страницы в любом случае нарушается