2009-06-30 20 views
12

A continuación se muestra un código de muestra, que tiene todos los enlaces justificados a la derecha. Me gustaría cambiar el CSS, por lo que el enlace "Izquierda" está justificado a la izquierda, los otros están justificados a la derecha, pero todos están en la misma línea. ¿Cómo puedo hacer eso?CSS - Alineación izquierda y derecha en la misma línea

Gracias de antemano,

John

El HTML:

<div class="mainlinks"> 
    <a href="left.php" class="links">Left</a> 
    <a href="right1.php" class="links">Right1</a> 
    <a href="right2.php" class="links">Right2</a> 
</div> 

El CSS:

.mainlinks 
    { 
    text-align:right; 
    margin-top:3px; 
    margin-right:10px; 
    margin-bottom:0px; 
    padding:0px; 
    } 

a.links:link { 
    color: #FF0000; text-decoration: none; 
    text-align:center; 
    margin-left:8px; 
    margin-top:300px; 
    margin-bottom:0px; 
    padding:2px; 
    font-family:Arial, Helvetica, sans-serif; 
    font-size: 14px; 
    } 

Respuesta

10

Flotador la izquierda a la izquierda

.left {float:left;} 

    <div class="mainlinks"> 
     <a href="left.php" class="links left">Left</a> 
     <a href="right1.php" class="links">Right1</a> 
     <a href="right2.php" class="links">Right2</a> 
    </div> 

Pero tiene que quitar el margin-top: 300px de a.links:link de lo contrario la izquierda se ser 300px debajo de la derecha.

+0

Gracias, Emily. Tu solución simple funcionó perfectamente. Además, gracias por ayudarme ayer al sugerir a Firebug para la otra pregunta que hice. –

0

que necesita para ponerlo para separar bloques (div) o anulación a través de un CSS más específico que se aplica al enlace propuesto por @skurpur

Creo que debe agregar visualización: bloquee el enlace para colocarlo, p. Ej. solo se pueden colocar elementos de bloque.

+0

Intenté eso, y el enlace de la izquierda era una línea arriba del enlace de la derecha. Los quiero en la misma línea. –

+0

bueno, necesitas estudiar CSS más para entender el modelo de caja. necesita flotar un elemento a la izquierda y el otro a la derecha (o ambos al ancho de configuración izquierdo al 50%, suponiendo que no se haya establecido ningún otro margen/margen y bordes). – dusoft

3

Ponga cada una en una división separada. Flote uno a la izquierda, uno a la derecha. Establecer los anchos

<div class="mainlinks"> 
    <div class="left">  
     <a href="left.php" class="links">Left</a> 
    </div> 
    <div class="right"> 
     <a href="right1.php" class="links">Right1</a> 
     <a href="right2.php" class="links">Right2</a> 
    </div> 
</div> 

CSS

.mainlinks .left { 
    float:left; 
    width: 49%; 
} 

.mainlinks .right { 
    float:right; 
    width: 49%; 
} 
+0

Esto supone que no hay margen/borde en los divs. Los porcentajes serían mejores que px para las longitudes de los divs. –

+0

Tengo un "

" directamente debajo de mis enlaces, pero con su configuración anterior, mis enlaces están ahora debajo de la línea.Además, el enlace que me gustaría estar en el lado izquierdo de la pantalla ahora está en el centro. Los enlaces a la derecha están en su lugar como de costumbre. –

+0

Deberás limpiar los flotadores. Pegue un div con un estilo de claro: ambos debajo de los enlaces principales div. –

1
<style> 
.mainlinks 
    { 
    text-align:right; 
    margin-top:3px; 
    margin-right:10px; 
    margin-bottom:0px; 
    padding:0px; 
    } 

a.links:link { 
    color: #FF0000; text-decoration: none; 
    text-align:center; 
    margin-left:8px; 
    margin-top:300px; 
    margin-bottom:0px; 
    padding:2px; 
    font-family:Arial, Helvetica, sans-serif; 
    font-size: 14px; 
    } 

.right { float: right } 
.left { float: left } 

</style> 
<div class="mainlinks"> 
    <a href="left.php" class="links left">Left</a> 
    <a href="right1.php" class="links right">Right1</a> 
    <a href="right2.php" class="links right">Right2</a> 
</div> 
+0

Intenté esta configuración, y cambió drásticamente la apariencia de mi página. Tal vez voy a seguir jugando. –

15

Es una publicación anterior, pero está bien clasificada en Google, por lo que sigue siendo relevante.

Utilicé otra forma de alinear tanto la derecha como la izquierda en la misma línea, sin utilizar ningún flotador feo. Se hace uso de una pantalla a modo de mesa:

HTML:


    <footer> 
     <nav>links (to the left)</nav> 
     <p>copyright (to the right)</p> 
    </footer> 

CSS:


    footer 
    { 
     display: table; 
     width: 100%; 
    } 
    footer nav 
    { 
     display: table-cell; 
     text-align: left; 
    } 
    footer p 
    { 
     display: table-cell; 
     text-align: right; 
    } 

Me resulta mucho más limpia de esta manera.

Espero que esto ayude a alguien!

+1

¡Guau, esta es una solución increíble! Lo que me gusta de esto es que está muy limpio y no tengo que usar 'float' (que requiere un claro: ambos después). –

+2

¡Eso es genial! Esta debería ser la nueva respuesta aceptada. – MCattle

Cuestiones relacionadas