Aplicar estilos css a elaces externos
- Fecha publicación
Utilizando los selectores de atributos de css, podemos seleccionar enlaces externos y añadirle un icono.
Vamos a ver algunos ejemplos de selectores de atributos que nos pueden ayudar a aplicar estilos a los enlaces externos.
Utilizando el atributo target
Generalmente, a los enlaces externos añadimos el atributo target="_blank" para que se abra en una nueva pestaña.
a[target='_blank']:after {
content: url('/static/icons/external-link.svg');
margin-left: 0.25rem;
}
- La propiedad
content
puede ser una string, que representa el path o bien la imagen en base 64. - Si utilizamos alguna librería de iconos como
FontAwesome
, podemos utilizar la propiedadcontent
para indicar el código del icono.
a[target='_blank']:after {
content: ' \f08e';
font-family: 'FontAwesome';
}
Utilizando el atributo href
Basandonos en el valor del atributo href
podemos decidir si un enlace es interno o externo.
Por ejemplo
- Si el dominio utilizado no coincide con el dominio del sitio web.
- Si no es un ancla (No inicia con
#
) - Si no empieza con
/
a:not([href*='frontendstools.com']):not([href^='#']):not([href^='/']):after {
content: url('/static/icons/external-link.svg');
margin-left: 0.25rem;
}
Icono SVG y Base 64
BASE 64 External icon
data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjUwMDIgMTBIMTIuNTAwMkMxMi4yMjQyIDEwIDEyLjAwMDIgMTAuMjI0IDEyLjAwMDIgMTAuNVYxNEgyLjAwMDAzVjRINi41MDAxQzYuNzc2MzYgNCA3LjAwMDExIDMuNzc2MjUgNy4wMDAxMSAzLjVWMi41QzcuMDAwMTEgMi4yMjM3NSA2Ljc3NjM2IDIgNi41MDAxIDJIMS41MDAwMkMwLjY3MTUxMSAyIDAgMi42NzE1IDAgMy41VjE0LjVDMCAxNS4zMjgyIDAuNjcxNTExIDE2IDEuNTAwMDIgMTZIMTIuNTAwMkMxMy4zMjg1IDE2IDE0LjAwMDIgMTUuMzI4MiAxNC4wMDAyIDE0LjVWMTAuNUMxNC4wMDAyIDEwLjIyNCAxMy43NzYyIDEwIDEzLjUwMDIgMTBaTTE1LjI1MDIgMEgxMS4yNTAyQzEwLjU4MjQgMCAxMC4yNDg0IDAuODA5NSAxMC43MTg5IDEuMjgxMjVMMTEuODM1NCAyLjM5Nzc1TDQuMjE4ODIgMTAuMDExNUM0LjA4MjMxIDEwLjE0NzIgMy45OTgzMSAxMC4zMzUyIDMuOTk4MzEgMTAuNTQyN0MzLjk5ODMxIDEwLjc1MDIgNC4wODI4MSAxMC45MzgyIDQuMjE4ODIgMTEuMDc0TDQuOTI3MDggMTEuNzgxMkM1LjA2MjgzIDExLjkxNzggNS4yNTA1OCAxMi4wMDE3IDUuNDU4MzMgMTIuMDAxN0M1LjY2NjA5IDEyLjAwMTcgNS44NTM4NCAxMS45MTc1IDUuOTg5NTkgMTEuNzgxMkwxMy42MDI1IDQuMTY2MjVMMTQuNzE4NyA1LjI4MTI1QzE1LjE4NzUgNS43NSAxNiA1LjQyMiAxNiA0Ljc1VjAuNzVDMTYgMC4zMzYgMTUuNjY0IDAgMTUuMjUgMEgxNS4yNTAyWiIgZmlsbD0iIzQwNDA0MCIvPgo8L3N2Zz4K
SVG External icon
<svg width="16" height="16" viewBox="0 0 16 16" fill="" xmlns="http://www.w3.org/2000/svg">
<path d="M13.5002 10H12.5002C12.2242 10 12.0002 10.224 12.0002 10.5V14H2.00003V4H6.5001C6.77636 4 7.00011 3.77625 7.00011 3.5V2.5C7.00011 2.22375 6.77636 2 6.5001 2H1.50002C0.671511 2 0 2.6715 0 3.5V14.5C0 15.3282 0.671511 16 1.50002 16H12.5002C13.3285 16 14.0002 15.3282 14.0002 14.5V10.5C14.0002 10.224 13.7762 10 13.5002 10ZM15.2502 0H11.2502C10.5824 0 10.2484 0.8095 10.7189 1.28125L11.8354 2.39775L4.21882 10.0115C4.08231 10.1472 3.99831 10.3352 3.99831 10.5427C3.99831 10.7502 4.08281 10.9382 4.21882 11.074L4.92708 11.7812C5.06283 11.9178 5.25058 12.0017 5.45833 12.0017C5.66609 12.0017 5.85384 11.9175 5.98959 11.7812L13.6025 4.16625L14.7187 5.28125C15.1875 5.75 16 5.422 16 4.75V0.75C16 0.336 15.664 0 15.25 0H15.2502Z" fill="#848484" />
</svg>