Как установить: высота/ширина ссылки с помощью css?
это звучит немного безумно, но я просто не могу установить высоту и ширину a элементы навигации.
#header div#snav div a{
width:150px;
height:77px;
}
#header div#snav div a:link{
width:150px;
height:77px;
}
#header div#snav div a:hover{
height:77px;
background:#eff1de;
}
любые идеи, что я делаю неправильно?
5 ответов:
добавить display: block;
a-tag является встроенным элементом, поэтому ваша высота и ширина игнорируются.
#header div#snav div a{ display:block; width:150px; height:77px; }
якоря должны быть другого типа отображения, чем их значение по умолчанию, чтобы принять высоту.
display:inline-block;илиdisplay:block;.на
line-heightчто может быть интересно с этим.
ваша проблема, вероятно, что
aэлементыdisplay: inlineпо своей природе. Вы не можете установить ширину и высоту встроенных элементов.вы должны были бы установить
display: blockнаa, но это принесет другие проблемы, потому что ссылки начинают вести себя как блочные элементы. Самое распространенное лекарство от этого-дать имfloat: left, так что они выстраиваются бок о бок в любом случае.
применяется ко всем элементам, но не замененным встроенным элементам, столбцам таблицы и группам столбцов
An
aэлемент по умолчанию является встроенным элементом (и он не заменяется).необходимо изменить отображение (непосредственно с помощью свойства display или косвенно, например, с помощью float).
спасибо RandomUs 1r за это наблюдение:
изменение его для отображения: inline-block; решает эту проблему. - RandomUs1r 14 мая ' 13 в 21: 59
Я попробовал его сам для верхней панели меню навигации, следующим образом:
первый стиль элемента " li " следующим образом:
дисплей: встроенный блок;
ширина: 7em;
выравнивание текста: по центру;затем введите элемент " a " > как следует:
ширина: 100%;
теперь все навигационные ссылки имеют одинаковую ширину с текстом, центрированным в каждой ссылке.