К сожалению, CSS-контур не поддерживается в IE7, поэтому я застрял с использованием границы. Но добавление границы к любому элементу на странице занимает место и, возможно, сдвигает страницу.CSS-схема с использованием границы CSS
Если я добавляю границу 2px, тогда я устанавливаю margin -2px, это порог не идеальный, поскольку элементы списка перемещаются влево, а «margin: auto» действительно винты с ним.
Вы можете увидеть примеры здесь:
http://paul.slowgeek.com/nodeSelector/tests/simple.html
http://paul.slowgeek.com/nodeSelector/tests/center1.html
Например, если страница была:
<div>
<p>Lorem Ipsum</p>
</div>
И тогда я сделал:
<div>
<p style="border: 5px solid red">Lorem Ipsum</p>
</div>
Страница будет теперь иметь 10 пикселей больше, а элемент p будет иметь отступ с 5 пикселями. Но если я сделал:
<div>
<p style="outline: 5px solid red">Lorem Ipsum</p>
</div>
в Firefox 3, страница будет точно такой же высоты, и элемент будет находиться в том же положении. Я хочу, чтобы это поведение работало с перекрестным браузером.
В принципе, как вы можете использовать границу CSS, чтобы получить эффект контура CSS?
+1: Это то, что я делаю, за исключением того, что использую прозрачную рамку. – Joel
+1: Да, то же самое. –
в качестве подсказки, если вы хотите добавить полупрозрачную границу, u всегда должен использовать свойство background-clip для CSS3, чтобы работать хорошо, поэтому я предлагаю, когда вы хотите добавить полупрозрачные границы, используйте контур и когда у вас есть сплошной цвет фона та же граница цвета, что и не зависание, и другая граница цвета в режиме зависания –