2011-12-05 2 views
13

Se voglio avere un bordo sui tre lati, devo dichiarare il bordo per ogni lato es.Bordo CSS su tre lati

border-left:1px solid green; 
border-bottom:1px solid green; 
border-right:1px solid green; 

o c'è qualche modo di scelta rapida?

risposta

29
border: 1px solid green; 
border-top: 0; 
+0

Qualcuno ha effettivamente testato questo? Non funziona per me ... –

+0

hai visto che funziona in * qualsiasi * browser? Sono su un mac e non ha funzionato in safari, chrome o firefox –

+0

solo con pochi anni di ritardo ma funziona benissimo per me – thatOneGuy

10

Beh, c'è un po ' via più breve - ma non è quello che si dice una scorciatoia ...

border: 1px solid green; 
border-top: 0; 

Oppure si poteva dichiarare elementi parziali che permetterebbero per chiarezza:

border-color: green; 
border-style: solid; 
border-width: 0 1px 1px 1px; 
3
border:1px solid green; 
border-top: none; 

Nota: non lo farei personalmente; potrebbe essere fonte di confusione per chi lo legge e non c'è davvero bisogno. Sebbene il modo originale implichi la ripetizione, è minimo.

2

questo è un po 'più corto e fa lo stesso:

border:1px solid green; 
border-top:0; 
2

Non è necessario dichiarare il border-top style e poi ignorarlo:

border: 1px green; 
border-style: none solid solid;