Klaar voor een nieuwe uitdaging.
http://stackoverflow.com/...127/css3-gradient-borders
Had je al gezocht op 'CSS3 gradient border' ?
Je zou ook even goed kunnen kijken naar de ondersteuning door diverse browers.
heidiulrich.nl | adventura.nl : rugzakavonturen | pathwise.nl : prepping geeks to get jobs
1
| background-color: rgba(255,255,255,0.5); |
Niet als gradient (kan volgens mij ook niet in 1px) maar wel doorzichtig. Met rgba kan je als laatste parameter de opacity meegeven.
Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana
Ik heb me al de pestpokken gezochtDark Blue schreef op woensdag 18 mei 2011 @ 09:28:
Nou, ik vind hier zo al wat...
http://stackoverflow.com/...127/css3-gradient-borders
Had je al gezocht op 'CSS3 gradient border' ?
Je zou ook even goed kunnen kijken naar de ondersteuning door diverse browers.
De voorbeelden die ze daar aangeven doen een gradient op de verkeerde as voor mij:
"When an element has a border that is larger than a single CSS pixel, each line of pixels uses the next color specified in this property, from the outside in"
Ik wil niet outside-in maar over de lengte van de border...
@samo: hm ja, alleen heb ik dan nog geen gradient; wel een goed idee!
Klaar voor een nieuwe uitdaging.
Ik heb niet ontzettend veel ervaring met CSS3 gradients als border-image, maar border-radius leek niets meer te doen bij het instellen van border-image (iedergeval in -webkit-), en de afzonderlijke border-top-image, etc lijken ook nog niet echt te werken...
Een soort van workaround die ik zo even kan bedenken is een tweede element (bijv. ::before / ::after) van 1px hoog absoluut te positioneren over de border-top heen, en deze een gradient background te geven.
“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.
Zie zo met de huidige browsermogelijkheden geen andere oplossing.
Probleem is de zwarte pixels rechts, van de rounded corners die net over de gradients vandaan komen. Verder is deze oplossing alleen geschikt voor background van één kleur...
De essentie:
.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| div:before,
div::before,
div:after,
div::after {
content: " ";
height: 5px;
width: 100%;
position: absolute;
left: 10px;
top: -5px;
background: linear-gradient(left, rgba(0,0,0,1) 0%,rgba(255,255,255,1) 100%);
}
div:after,
div::after {
top: auto;
bottom: -5px;
} |
-- edit --
Die oplossing is inderdaad niet wat je zoekt; dat is de border (wanneer meerdere pixels) van buiten naar binnen andere kleuren geven.chem schreef op woensdag 18 mei 2011 @ 09:41:
Ik heb me al de pestpokken gezocht( http://www.webkit.org/blog/175/introducing-css-gradients/ al 3x gelezen en uitgeprobeerd )
[...]
Ik wil niet outside-in maar over de lengte van de border...
Je kunt: rood-wit-blauw doen maar ook zwart-grijs-wit, waarbij het tweede geval een gradient geeft.
[ Voor 34% gewijzigd door OkkE op 18-05-2011 11:20 ]
“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.
Als ik de rounded borders top-right en bottom-right uitzet ziet het er top uit, en daar zie je de borders toch niet.OkkE schreef op woensdag 18 mei 2011 @ 10:43:
Dit is een idee... http://azwart.nl/got/got6.html (Webkit & FF4)
Probleem is de zwarte pixels rechts, van de rounded corners die net over de gradients vandaan komen. Verder is deze oplossing alleen geschikt voor background van één kleur...
Super bedacht, eens zien hoe we dit aan de praat krijgen incl... IE support (maar die uiteraard mét plaatje).
Thanks!
Klaar voor een nieuwe uitdaging.
Edit: Dat zeg ik verkeerd. Voor IE8 lijkt background-gradient (d.m.v. filter) wel op normale elementen te werken, niet op :before en :after. Wel lijkt IE8 de :before en :after met background-image te ondersteunen.
-- edit --
Overgens, bedenk ik me nu, is het denk ik nog netter om de gradient van transparant naar de background-color te laten lopen (van de :before en :after), zo kun je de border-color eenvoudig aanpassen zonder ook je gradients te hoeven aanpassen.
[ Voor 49% gewijzigd door OkkE op 18-05-2011 11:59 ]
“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.
maar voor IE zal het idd nog een klusje worden; ik denk background afbeeldingen en wellicht (als border-radius.htc geen uitkomst biedt) ook de hoekjes maar met afbeeldingen. Stomme IE.
Klaar voor een nieuwe uitdaging.
Nadeel is wel dat expressions gruwelijk traag zijn en je dus wel opbouw zult zien.
[ Voor 24% gewijzigd door Bosmonster op 18-05-2011 12:02 ]