#jquery #html #css #jquery-ui #jquery-ui-tabs
#jquery #HTML #css #jquery-пользовательский интерфейс #jquery-ui-tabs
Вопрос:
Есть ли правильный способ разместить изображение рядом с тегом a в li, используемом в качестве вкладки jQuery?
<div id="tabs">
<ul>
<li><a href="#">Text</a>{I want the image here}</li>
</ul>
</div>
Использование div с изображением в качестве фона с использованием встроенного блока работает, но я читал, что встроенного блока следует избегать.
<div style="display:inline" class="ui-icon ui-icon-refresh">
Есть ли способ лучше?
Комментарии:
1. Я использую
display:inline-block
довольно регулярно. Единственное предостережение в том, что IE6 и IE7 отображают его только на встроенных элементах, но<a>
теги попадают в эту категорию. Есть ли другие причины не использовать его? Источник: quirksmode.org
Ответ №1:
Разве вы не можете просто использовать изображение, выровненное по вертикали?
<img src="image.jpg" style="vertical-align: middle" />
Комментарии:
1. Это отлично работает. Я пытался использовать значок спрайта jquery, но вместо этого я могу использовать изображение.
2. Если ваше изображение должно следовать за текстом, это действительно простое решение. По умолчанию <img> является встроенным элементом, поэтому вы можете интегрировать его в текстовый поток. Вы также могли бы установить фоновое изображение на LI, выровненное по правому краю, для получения другого результата.
3. @Glauber Rocha Стилизация LI была бы хорошей идеей для внешнего вида, но я тестирую, как это будет работать с кнопкой обновления на текущей выбранной вкладке.
Ответ №2:
Это решение отлично работает для меня:
HTML-код вкладки:
<div id="tabs">
<ul>
<li><a href="link1.php"><img src="image1.png" border="0">menu item 1</a></li>
<li><a href="link2.php"><img src="image2.png" border="0">menu item 2</a></li>
<li><a href="link3.php"><img src="image3.png" border="0">menu item 3</a></li>
<li><a href="link4.php"><img src="image4.png" border="0">menu item 4</a></li>
</ul>
</div>
И CSS
#tabs ul li img, #second ul li img {
vertical-align: middle;
margin-right: 8px;
}