2011-02-22 18 views
5

Aquí está mi códigosuperior Alineación vertical en CSS

<div style="margin:0;padding:0;vertical-align:text-top; border:1px solid red;float:right;"> 
    <span>Key:</span> 
    <asp:TextBox ID="tbKey" MaxLength="16" runat="server" ></asp:TextBox> 
    <asp:ImageButton ID="btnRefresh" runat="server" imageUrl="_img/btn_submit.gif" Height="22" Width="52" /> 
</div> 

Me gustaría que todos los tres elementos que simplemente alinee en la parte superior. ¿Es esto factible?

Editado: El código fuente (traducido) es

<div style="margin:0;padding:0;vertical-align:text-top; border:1px solid red;float:right;"> 
       <span>Key:</span> 
       <input name="tbKey" type="text" maxlength="16" id="tbKey" /> 

       <input type="image" name="btnRefresh" id="btnRefresh" src="_img/btn_submit.gif" style="height:22px;width:52px;border-width:0px;border-width:1px;" /> 

      </div> 
+2

eso es su código .NET. Muéstranos el HTML/CSS renderizado. –

+0

acaba de editar la cuestión, véase más arriba – sarsnake

Respuesta

0

trate de darle el atributo vertical-align: text-top a su botón. En CSS:

#btnRefresh 
{ 
    vertical-align: text-top; 
} 

O añadir VerticalAlign="Top" a su mando a ImageButton (no sé cómo este último se traduce en CSS).

+0

no funciona. Añadiendo vertical-align: text-top; al botón simplemente empuja los otros 2 elementos hacia arriba. Y cuando se quita, el botón está arriba, por lo que es el viceversa de lo que cabría esperar. Estoy seguro de que los ninjas de CSS explicarán por qué :) – sarsnake

+0

@gnomixa, lo siento, debo haberte entendido mal. Mi error. – zdyn

0

¿Usted intentó vertical-align: top; (por elemento en línea solamente) Esto no funciona con el elemento de bloque como div. Por lo tanto, la solución se establece un ancho fijo para el elemento div y display: inline; También necesita un valor de altura.

0

Pruebe el estilo de su css de esta manera:

div{ 
    display: table-cell; 
    vertical-align: top; 
} 
11

normalmente utilizo

display: inline-block; 

en esta situación. Eso debería hacer que el diseño respete

vertical-align: top; 

reglas.

Esto es similar a la solución table-cell de @Jason Ellis, pero más semántica ya que esta no es una tabla.

Cuestiones relacionadas