2015-06-04 5 views
0

я следующий HTML и CSS код:Удалить границу из-Tag, если ссылка изображение

HTML: 
<a href="http://www.google.com/" target="_blank"><img src="image.jpg" /></a> 

CSS: 
a:hover { 
border-bottom:1px solid #000; 
} 

Проблемы в том, что а-тег следует добавить границу, когда только зависание если приложенное ссылка НЕ ​​является изображением.

Граница отсутствует на изображении, она находится на a-Tag ... Как я могу это решить?

Есть ли решение для этого?

+0

Добавить класс к ссылкам, которые имеют изображение в них. Не существует селектора, который может посмотреть, имеет ли привязанный тег изображение и чем-то применим к этому тегу привязки. – putvande

+0

Для зависания текстовых ссылок есть свойство CSS 'text-decoration: underline;' Используйте его. – connexo

ответ

1
a img, a img:hover { border:none; } 

, если у вас есть только один а-тег, который имеет изображение, вы можете использовать идентификатор

#myImageATag, #myImageATag:hover{ 
    border:none; 
} 
<a id="myImageATag"></a> 

Если вы тусклый применить ко многим другим, вы можете использовать class

.linksWithImages, .linksWithImages:hover{ 
     border:none; 
} 

Я не знаю, можете ли вы использовать Jquery, но это решение, чтобы проверить, есть ли изображение, а затем удалить границу. Как проверить, если тег имеет изображение ниже в JQuery

$('a').each(function() { 
    if ($(this).find('img').length === 0) { 
     $(this).css("border", "none"); 
    } 
}); 
0

использовать следующий CSS для ссылки якорь изображения:

a img { border: none; } 

a:hover img { border: none; } 
+0

Добро пожаловать в переполнение стека. Не забудьте использовать блок кода при добавлении фрагмента кода к вашим ответам. –

1

CSS не может это сделать, но Jquery может легко помочь вам:

$(document).ready(function(){ 
    $("img").parent("a").css("border-bottom" , "none"); 
}); 

испытание его здесь: http://codepen.io/anon/pen/zGZbVj

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