2013-04-03 11 views
7

Come sappiamo, overflow: hidden in combinazione con border-radius non funziona in tutto il browser come dovrebbe, ovvero Safari e Opera hanno problemi a tagliare gli angoli arrotondati dalle immagini contenute.rileva un overflow errato con raggio di confine

Esempio HTML:

<a class="circle" href="#"> 
    <img src="http://placekitten.com/300/300" alt="kitten" /> 
</a> 

e corrispondente CSS:

.circle { 
    -webkit-border-radius: 100px; 
    -moz-border-radius: 100px; 
    border-radius: 100px; 
    height: 120px; 
    overflow: hidden; 
    width: 120px; 
} 

controllo questo jsfiddle

Ho un ripiego per Safari e Opera con sfondo-immagini, ma io voglio solo usarlo nel caso overflow non funziona bene. Ora, non voglio semplicemente utilizzare il rilevamento del browser per known reasons, ma voglio rilevare la funzionalità la possibilità di tagliare gli angoli nel modo giusto. Normalmente vorrei verificare come questo:

if('overflow' in document.body.style){ 
    // overflow 
} else { 
    // no overflow 
} 

Ma questo non aiuterà questa volta ... Quindi, non v'è alcun modo per verificare in modo corretto?

+4

Non c'è modo di controllare questo. Non è una funzione che stai cercando di rilevare, ma un bug DEEP. Non puoi "chiedere" al browser se ha quel bug. La parte con cui puoi parlare non lo sa. – Rudie

+0

Un grande violino! – Rudie

+0

@Rudie Forse dovrei chiedere ** rilevamento dei bug ** ... (In realtà questo è quello che voglio fare: http://jsfiddle.net/SY9tY/) – AvL

risposta

Problemi correlati