2011-02-25 14 views
5

posibles duplicados:
How do I embed an “a:hover{…}” rule into a style attribute in the middle of a document?
How to write a:hover in inline CSS?Usando: flotar durante estilo en línea de un elemento (el uso de HTML/CSS/PHP)

quiero cambiar dinámicamente el color de la libración de una elemento, pero no utiliza hojas de estilo CSS externas, solo en línea. Este es el código (usando php para generar el elemento)

echo ' 
<div class="container" style="color:#'.$color.'"> 
    '.$contents.' 
</div>'; 

Cuando el usuario se desplaza sobre este elemento contenedor, el estilo de color va a cambiar al valor de $color (por el momento no hay cernido).

Cualquier ayuda sería apreciada.

+1

usted puede hacerlo usando javascipt. es javascript apreciable? – Sujeet

+0

No puedes. Ver: http://stackoverflow.com/questions/1033156/how-to-write-ahover-in-inline-css – jterrace

+0

Este es un reenvío de: http://stackoverflow.com/questions/1033156/how-to- write-ahover-in-inline-css Las notas del acantilado son que ': hover' es una pseudoclase y solo se puede usar en una hoja de estilo. Puede crear una clase y asignarla a través de PHP o usar algunos JS para hacer 'onmouseover' y' onmouseout'. – Xenethyl

Respuesta

5

Esto le ayudará si javascript es apreciable

<TD onMouseOver="this.bgColor='#00CC00'" onMouseOut="this.bgColor='#009900'" bgColor=#009900> 
<A HREF="http://www.mysite.com">Click Here</A></TD> 

o

Javascript Cambiar el color del texto de hipervínculo OnMouseOver

<style type="text/css"> 

a { 
font-weight:bold; 
font-family:verdana; 
text-decoration:none; 
} 

</style> 

<script type="text/javascript" language="javascript"> 
function changeColor(idObj,colorObj) 
{ 
    document.getElementById(idObj.id).style.color = colorObj; 
} 
</script> 

<a href="#" style="color: #000000" onmouseover="this.style.color='#FF0000'" onmouseout="this.style.color='#000000'"> 
    Link 1</a> 
<br /> 
<br /> 
<a href="#" style="color: #999999" onmouseover="this.style.color='#008000'" onmouseout="this.style.color='#999999'"> 
    Link 2</a> 
<br /> 
<br /> 
<a href="#" style="color: #FF0000" onmouseover="this.style.color='blue'" onmouseout="this.style.color='#FF0000'"> 
    Link 3</a> 
<br /> 
<br /> 
<a id="lnk1" href="#" style="color: #008000" onmouseover="changeColor(this,'#FF0000');" 
    onmouseout="changeColor(this,'#008000');">Link Color change using javascript function</a> 

+0

'document.getElementById (idObj.id) .style.color = colorObj;' también podría hacerse así: 'idObj.style.color = colorObj;' porque ya tiene el objeto (esto) así que ¿por qué no configurarlo directamente? allí sin obtenerlo de nuevo con el documento. - de todos modos: +1 porque era la solución correcta para un estilo dinámico hover;) – DominikAngerer

2

No puede, ya que no puede configurar los pseudo-selectores en línea. Idealmente, debería diseñar clases separadas en su css externo que representarían los diversos estados de desplazamiento que necesita, y en PHP asigne estas clases a su contenido.

Cuestiones relacionadas