Formulario con CSS

Tengo un formulario dentro de una capa: <div class="formulario"> <form...

La FAQ Formulario con CSS tiene

Pertenece a la categoría:
Pregunta
Tengo un formulario dentro de una capa:





<div class="formulario">


<form action="enviarmensaje.php" method="post">


<fieldset><legend>leyenda</legend>




<table width="70%" align="center">


<tr>


<td width="15%"><label for="nombre">Nombre</label>


<td width="55%"><input type="text" name="nombre" id="nombre" size="30" />


<input type="hidden" name="redirect" value="listo.php" />


<input type="hidden" name="recipient" value="<?php echo $autor->email; ?>" />


.......


</div>





ahora, quiero cambiar el look de los campos input, textarea.


Para eso hago:




fieldset {border:none;}


label {font-weight:bold;}


input, textarea {border:1px solid #6787b8;}




pero yo solo quiero que cambie el aspecto en este formulario, NO en otros lados. (porque me pasa que en el maldito IE, los radiogroup quedan con borde alrededor y queda espantoso)




para eso, lo modifique de esta forma:


.formulario fieldset {border:none;}


.formulario label {font-weight:bold;}


.formulario input, formulario textarea {border:1px solid #6787b8;}




pero no me le da bolilla.. he probado varias sintaxis, pero es lo mismo


Agradezco cualquier sugerencia
Respuesta de Viviana A. Guillen
Vas a tener que darle un nombre particular a los CSS para este formulario, o para los otros input por ejemplo



<input name="Opcion" type="radio" class="ejemploCSS" value="1">





y en el CSS escribes:


input.ejemploCSS {


border:1px solid #6787b8;


}




De esta manera puedes personalizar los distintos input, o para enlaces con a.linkmenu, td.titulo, td.seccion, etc.


En tu ejemplo has generalizado demasiado, y deberías ir a lo mas particular. (cualquier cosa me escribes nuevamente si no me expresé bien).
Volver al árbol de categoríasVolver al árbol de categorías

Comentarios

nachhh

02/11/2007
Para dar estilo a un elemento particular te conviene usar identificadores.

Las clases se usan para dar estilo a cualquier instancia de un elemento.

Cuando ponés:

fieldset {border:none;}
label {font-weight:bold;}
input, textarea {border:1px solid #6787b8;}

Eso afecta a todos los inputs, todos los textarea, etc. O sea, le estas diciendo al navegador (a cualquiera, IE no tiene nada que ver) que aplique el estilo a los elementos mencionados (por se aplica el estilo a los radio o cualquier input).
(la clase que usas no tiene ningún efecto porque nunca la usas)

Podés hacer algo así (ejemplo con el input):

en el css:

#mi-input {border:1px solid #6787b8;}

y en el html

<input id=mi-input ...>..</input>

FAQ relacionadas