2010-09-15 14 views
18

È possibile creare un bordo in CSS3 in modo che siano arrotondati e punteggiati?CSS3 Bordi arrotondati e tratteggiati?

che sto arrotondando i miei angoli ma sembrano solido con:

border: 1px dotted gray; 
-moz-border-radius-topright: 30px 20px; 
-moz-border-radius-topleft: 30px 20px; 

Il resto del confine è punteggiata ma gli angoli sono solidi.

Capisco che questo è specifico per Firefox, ma per ora va bene.

Grazie

risposta

27

È un bug in firefox.visualizza questo issue, mozilla non supporta l'angolo arrotondato per il bordo tratteggiato e tratteggiato.

+9

Cinque anni più tardi e questo bug è ancora lì ..:/ – dschu

+2

Make it a sei ...! – Buzinas

+2

Questo sarà (finalmente) corretto [nella prossima versione] (https://developer.mozilla.org/en-US/Firefox/Releases/50#CSS) di Firefox in arrivo a novembre: "Angoli con margini arrotondati con tratteggio e gli stili puntati sono ora resi con lo stile specificato invece di uno stile solido " – vard

0

Sì, in teoria si può avere bordi punteggiati e arrotondati, ma come avete visto praticamente browser potrebbe non supportare ancora.

+0

Sì ho trovato il bug report - https://bugzilla.mozilla.org/show_bug.cgi?id=382721 – jmcmahon

0

Una soluzione consiste nell'utilizzare più immagini di sfondo. È possibile utilizzare questo approccio per specificare un diverso background-image per i quattro angoli.

È anche possibile aggiungere una quinta immagine per l'immagine di sfondo centrale (ripetuta, se necessario).

Qualcosa sulla falsariga di ...

.dashed-rounded-border { 

    border: 2px dashed blue; 

    background-image: url("top-left.png"), url("top-right.png"), url("bottom-right.png"), url("bottom-left.png"), url("center.png"); 
    background-position: left top, right top, right bottom, left bottom, center center; 
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat-x; 

    -webkit-border-radius: 22px; 
    -moz-border-radius: 22px; 
    border-radius: 22px; 

} 
0

La mia soluzione di questo problema è

background: url('../images/dot.png'); 
background-size: 4px; 
background-position: bottom left; 
background-repeat: repeat-x; 

verificare che le immagini punto è solo un punto con un po 'di spazio bianco sul lato di essa appassire . Dopodiché dovresti essere buono.

enter image description here