2012-02-06 40 views
7

Tengo diferentes etiquetas de anclaje con href = # ids y necesito para ocultarlos utilizando una regla css general para todos ellos,Cómo ocultar una etiqueta de ancla por #id href usando css

Content xxxxxxxxx <a href="#tab1">Table 1</a>.Content xxxxxxxxxxxx <a href="#tab2">Table 2</a> 

estaba tratando de usar algo como esto:

#wrap a='#tab1'{ 
display:none; 
} 

¿Alguna idea de cómo hacerlo?

Respuesta

14

Intente utilizar selectores de atributos:

a[href='#tab1']{ display: none } 

O incluso simplemente

[href='#tab1']{ display: none } 

http://www.w3.org/TR/CSS2/selector.html

+1

Pero si el ancla tiene 'display: none' ya no está activa (es decir, al hacer clic en un enlace a este anclaje, por ejemplo, no se desplazará hacia abajo). Y con 'visibility: hidden' el ancla aún usa el mismo espacio. ¿Alguna solución para esto? – roesslerj

+0

No entiendo el comentario: ¿por qué quiere que un usuario pueda hacer clic en un enlace que está oculto? – graphicdivine

+0

El enlace en sí no está oculto, solo el ancla al que se refiere. El problema era que (en el sistema que generaba el HTML) no tenía acceso al texto original al que quería desplazarme y no quería agregar texto adicional solo para poder colocar un ancla. – roesslerj

0

Suponiendo #wrap es un identificador de un padre, puede utilizar:

/* Hide all anchor tags which are children of #wrap */ 
#wrap a{ display:none; } 

/* Hide all anchor tags which are direct children of #wrap */ 
#wrap > a{ display:none; } 

/* Hide a specific anchor tag (Probably won't work in IE6 though) */ 
a[href="#tab1"]{ display:none; } 
2
#wrap a[href="#tab1"]{ 
display:none; 
} 
11

¿Por qué no crear una clase de CSS para sus anclajes y ocultarlos con esa clase?

<a href="#tab1" class="hiddenTab">foo</a> 

Y en tu CSS:

a.hiddenTab {visibility:hidden; display:none;} 

Todos los anclajes que le desea ocultar que sólo tiene que utilizar "class = 'hiddenTab'"

+0

Respuesta correcta :) .. – Hitesh

1

Si desea ocultar todas unas etiquetas que han establecido href, se puede hacer esto:

a[href] { display: none; } 
2

Trate de usar a[href*="#"] {display: none;} este selectores identifica un # en el atributo href de un ancla y si se encuentra que se aplica el estilo

Se puede utilizar de otra manera, como header a[href*="#"] {display: none;} Así que no se metan todos los anclajes en el sitio!

Cuestiones relacionadas