2016-07-16 3 views
0

위키에있는 화살표 아이콘을 표시 할 외부 링크 내용은 :after입니다.외부 링크 CSS : 텍스트 링크 대 img 링크

a[href^="https://"] 
:not([href*="mysite.com"]) 
:after{ 
content: " " url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=);  
} 

그러나 링크도 이미지가 아닌 텍스트입니다. 그 사람들을 위해 나는 :after 콘텐츠를 원하지 않는다. 나는 그 대신에 그림자를 원한다. 그러나 나는 그것을 어떻게하는지 이해할 수 없다.

대부분의 이미지 링크는 텍스트 링크없이 겹쳐 쌓인 비 연결 이미지가 없으므로 div로 감싸고 해당 div를 스타일을 제거하여 제거 할 수 있습니다. 모든 링크의 내용 다음에 호버에 그림자 추가 모든 이미지. 하지만 그것은 div를 중첩하는 것입니다. 더하기 divs 외의 이미지 링크가 없다는 것을 의미합니다.

답변

0

: 자신의 링크 중 하나가 (아이에 텍스트) 완전히 비어 있습니다하지 않는 한 문제가 해결되지 않도록, 텍스트를 포함하여 내부에 컨텐츠를 확인합니다 빈. 이미지가 있거나없는 코드 예제를 제공 할 수 있다면 좋을 것입니다.

중첩 div가없는 대신 <img>을 중첩하는 경우 이미지가있는 링크가있을 때 클래스를 추가하기 만하면됩니다. 그런 다음 스타일을 다르게 지정하십시오. 제거

+0

죄송합니다, 텍스트/IMG 링크의 예를 제공하기 위해 생각하지 않았다 텍스트 링크는 다음과 같습니다. google.com 이미지 링크는 다음과 같습니다 Manya

+0

불행하게도 CSS는 않습니다 요소 외에 무엇인가를 확인하기 위해 비어있는 곳을 비우고 외부로 뭔가를 선택하기 위해 비어있는 가장 간단한 옵션은 이미지 링크에 클래스를 추가하는 것입니다. (나는 덜 사용되어야한다고 생각합니다. 더 쉽게 클래스를 추가 할 수 있지만 어느 방법이든 작동합니다.) 수동으로 또는 js를 사용하여 링크 안에 이미지가 있는지 자동으로 확인한 다음 클래스를 추가 할 수 있습니다. 두 옵션 모두 유효한 옵션입니다. 당신은 무엇이 최선인지 고려해야합니다. 당신의 경우. – Forty

+0

대단히 감사합니다. 수업을 추가하겠습니다. 이들 중 대부분은 PHP로 생성되었으며, 수동으로 처리 할 수있는 제품은 거의 없습니다. – Manya

0

텍스트가있는 앵커 요소에 이미지가있는 앵커 요소가 없다고 가정하면 다음을 사용할 수 있습니다. css empty selector :

a[href^="https://"]:not([href*="mysite.com"]):empty:after{ 
    content: " " url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=); 
}  
+0

: 텍스트 포함한 모든 링크의 내용 후에는 :( – Manya