2010-09-29 13 views
8

Quindi vorrei sbiadire il bordo. Ho le esatte impostazioni del gradiente webkit che voglio.Posso applicare il gradiente webkit a un bordo o solo uno sfondo?

Ma non si sa come implementarlo sull'elemento di bordo.

È possibile? Come lo faccio?

Solo CSS3 per favore.

Btw, ho provato la seguente CSS e non ha funzionato:

border-color: -webkit-gradient(linear, left bottom, left top, color-stop(0.74, rgb(214,11,11)), color-stop(0.39, rgb(175,13,13)), color-stop(0.07, rgb(157,22,22))); 
    border-style: solid; 
    border-width: 10px; 

risposta

12

Sì, è possibile applicare -webkit-gradient ad un bordo:

-webkit-border-image: -webkit-gradient(linear, left top, left bottom, from(#00abeb), to(#fff), color-stop(0.5, #fff), color-stop(0.5, #66cc00)) 21 30 30 21 repeat repeat; 

(from this example on webkit.org)

See the blog post on Webkit.org about -webkit-gradient

+2

Questo non funziona con border-radius =/ – grisevg

+0

@Josh Border I gradienti di immagine sono in stile MOLTO MOLTO Rotti, ma se vuoi rischiare, potresti COUCERE qualcosa insieme (non funzionerà molto bene se cambi i livelli di zoom o su questo o quel browser) http://jsfiddle.net/MWaTw/ [testato in google chrome] – mrBorna

0

Se qualcuno è interessato, questo è il modo in cui ho applicato un gradiente di bordo destro su un div in cui le estremità superiore e inferiore si attenuano. Sembra che ci sono voluti per sempre di capire ... Questo è solo per Safari come fare la stessa cosa in Firefox è molto più facile ...

http://jsfiddle.net/fkFec/1102/

<div class="g"> 
    <div>bla</div> 
</div> 

.g { 
    border-right-width:1px; 
    -webkit-border-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(0, transparent), color-stop(0.5, grey), color-stop(0.5, grey), color-stop(1, transparent)) 0 100%; 
    border-right-width: 1px; 
    border-left-width: 0px; 
    border-top-width: 0px; 
    border-bottom-width: 0px; 
    padding: 2px; 
    width: 400px; 
    height: 150px; 
    margin: 10px auto; 
} 
Problemi correlati