2013-07-07 2 views
2

Я создал два div с некоторым дополнением в каждом из них.Сохраните исходное заполнение при изменении веса шрифта

div { 
 
    display:inline; 
 
    background-color:yellow; 
 
    padding: 2px 2px 2px 2px; 
 
} 
 

 
div:hover { 
 
    font-weight:bold; 
 
}
<body style="font:15px arial,sans-serif;"> 
 
    <div>one</div> 
 
    <div>two</div> 
 
</body>

Как видно в CSS выше, я сделал вес шрифта жирным шрифтом при наведении указателя мыши над дивы.

Теперь, когда я нахожусь над первым div, второй div смещается вправо немного из-за дополнительного горизонтального пространства, необходимого для размещения текста жирным шрифтом.

Есть ли способ предотвратить смещение div? Можно ли учесть дополнительное пространство, даже если вес шрифта нормальный (т. Е. Когда div не зависает)?

Спасибо заранее!

ответ

4

Дивы сдвинутся, потому что они предназначены для размещения вокруг текста, поэтому, если текст станет больше, то и div. Лучше всего установить фиксированную ширину в div, поэтому он не будет двигаться.

0

Либо установите ширину как фиксированную, либо на части паров, уменьшите прокладку.

+1

'Sans-serif' является контролируемым пользователем семейством шрифтов, поэтому мы Wouldn» t знать, сколько отступов нужно удалить. –

0

Вместо display : inline; использование float:left; и обеспечить определенное количество width к div s

div { 
 
    background-color: #FFFF00; \t \t \t 
 
    float: left; 
 
    padding: 2px; 
 
    width: 41px; 
 
} 
 

 
div:hover { 
 
    font-weight:bold; 
 
}
<div>one</div> 
 
<div>two</div>

Смежные вопросы