2011-10-19 11 views
8

Qualcuno sa di un modo infallibile per forzare gli elementi figlio a rimanere nel raggio di confine dei loro genitori?Elementi figlio bg clip a colori ai genitori border-radius

Ecco un esempio js violino con cui sto lavorando: http://jsfiddle.net/fuego/qCNRZ/

Markup:

<div id="outer"> 
    <div id="inner"> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
     Nah nah nah<br/> 
    </div> 
</div> 

CSS:

#outer { 
    width: 300px; 
    background: red; 
    border-radius:20px; 

} 

#inner { 
    background:blue; 
} 

Voglio semplicemente il contenitore di apparire blu ora, ma con i genitori con i bordi arrotondati. Ho aggiornato il violino per riflettere.

+1

Penso che sia necessario pubblicare un diagramma di ciò che si desidera. –

+0

Sicuro: http://cl.ly/463s090Q412P1u0t2s0t L'unico punto in cui è impostato il raggio del bordo, è esterno, l'interno si adatta perfettamente a esso. Non voglio dover impostare in modo esplicito un raggio di bordo aggiuntivo per farlo corrispondere all'interno. Si ferma! –

+0

Quindi vuoi uno split 50/50? –

risposta

1

L'unico modo per ottenere ciò che si desidera con puro CSS è quello di aggiungere border-radius per entrambi div.

#outer { 
    width: 300px; 
    background: red; 
    border-radius:20px; 
    height:400px; 
} 

#inner { 
    background:blue; 
    border-radius:20px 20px 0 0; 
    padding-left:10px; 
} 

Demo:http://jsfiddle.net/tZ8AL/1/

22

Sulla base della vostra esempio basterebbe aggiungere overflow:hidden al vostro elemento #outer.

+3

Questa è la risposta giusta. Senza questa proprietà, il raggio di confine di un genitore non dovrebbe ritagliare il contenuto dei suoi figli per impostazione predefinita: http://stackoverflow.com/questions/8582176/should-border-radius-clip-the-content/8582304#8582304 – BoltClock

0

Aggiunta di "overflow: hidden;" al div esterno risolverà il tuo problema. Saluti.

Problemi correlati