I have just implemented the transparent gradient border in my website thanks to you! Awesome! I actually use it in an :after element behind the semi-transparent background for my articles with the z-index set to -1. 😃
Damn .. been searching all over the place for gradient borders.. I just used to add multiple backgrounds with proper positioning and size to emulate gradient borders.. or just layer ::before to get gradient border.. This was too informative Love you bro
that was some pretty slick border action. I need to inject this knowledge into the designers at work so they only design based off the things I already know ha
Perfect, I am coding my small project now, as I am not a designer i try to make things look simple, but i always want to add some artistic touch to them. The transparent border is something i need)
Last time I use border-image when it was as an exercise in a paper tutorial book and it was almost useless in real world. But now, with a gradient, that might be usable! Thanks!!
border-image is like that one candy on the bottom of the package - you don't really expect so much from it, its name is kind of boring and not really promising, but when you unwrap it, you realize - it is the most delicious candy of all times
for gradient border i always use background: linear-gradient and changing border to transparent. background: linear-gradient(#fff 0 0) padding-box, linear-gradient(to right, #9c20aa, #fb3570) border-box; border: 10px solid transparent; first linear-gradient is basically your background color to fill only the padding box while sitting on a second linear gradient which is the gradient that fills to the whole border area.
@@Way_Of_The_Light I only know how to do it with solid colors with box-shadow inset... Or a negative outline-offset.. creating a pseudo element sortof works too(by making width and height smaller than the parent)...
"The border property you never knew you needed" My negative side: "May be because we actually didn't need it?" My other side: "Just watch and shut up. You might actually happily use that one day".
I've been stuck trying to figure out an animated border-gradient with a Border radius while keeping a transparent background. I've seen ur animated border gradient video but with that method it looked like you need a 'background' for the card at the front to hide the gradient thats behind it. Is there a way to make an animated border with round corners? The SVG videos gave me the impression the gradient cannot be done in the CSS only in HTML, am I understanding that right?
@@KevinPowell Thank you for this video and for your response. Also, I was the guy who emailed you last week about this very topic. This channel is awesome!
right now if you want a round corner it would have to be included as part of the image. I have a github issue open with the CSSWG on making gradient border-image with work with border-radius.
Would this CSS work when creating an image border? I've tried it and it does NOT seem to work for an image. For some reason it does not bring in the image even though I tested the URL in a browser and that does open the image.
Thanks for the video. Good stuff. Would this be a good use case for throwing a loading "spinner" on a button? I played around a bit and think the Gradient Example 2 approach with an animation altering the deg would make it look like a loading bar and perfect for a button. Throw the loading class on the button when it is clicked, and remove that class when the process is finished.
This concept is called 9-slice scaling. en.wikipedia.org/wiki/9-slice_scaling I find legacy applications tend to heavily use background graphics, and this technique helps make them responsive.
It seems like its not possible for border-image to work if you have border-radius on your telement. Or well, the border-image work but it does not follow the shape of the element...
This is brilliant, and very timely for a project I'm working on right now. However I'm struggling a little - I'm using a png with a design on a white background for border image, but my border seems to get a small gradient. I can't work out why or how to remove it. Any advice please?
Would it not be better to pre-slice the corner in Photoshop, and use that as the border-image instead of the full thing? It seems to just mirror the corner over and over to create the border so why not save on resources?
Like captuhu said, as long as the image isn't some giant, bloated image that you're using for no reason, I don't really see the need to pre-slice it. You'll hopefully have a pretty optimized image to start with. I'd start with general image optimization, and if I was really needing to cut down a few more kb, then sure.
The image source could have a transparent gap on the outside for the spacing you want there, and then the image/pattern is inset a little bit, then it's just playing with the slicing
Because it's an image-source, just like a background-image, we can't animate it sadly. Or well, we could with @property and custom properties, but the support isn't very good.
This is borderline fantastic
🥁
This comment should be pinned for posterity :P
🤣💪🏾🔥😎
No, this is borderline godtier. Saying borderline fantastic is the same as saying barely fantastic
@@OLDACCOUNT_notfireman okay Shakespeare
5:38 "This isn't what you'd think it is" - that's a great description of CSS properties in general!
This is so cool. I want to see more of these little design hacks for common designs patterns.
I couldn't figure out why it wasn't working, but of course coming to a Kevin Powell video you learn exactly what you need
I have just implemented the transparent gradient border in my website thanks to you! Awesome! I actually use it in an :after element behind the semi-transparent background for my articles with the z-index set to -1. 😃
Damn .. been searching all over the place for gradient borders.. I just used to add multiple backgrounds with proper positioning and size to emulate gradient borders.. or just layer ::before to get gradient border..
This was too informative
Love you bro
css used to stress me out, this channel makes it much less scary and confusing
Nice content Kevin
I also used gradient borders in some of my recent projects
One drawback is that it doesn't work with border radius
Remember when border-radius wasn't a thing and everything had a gif border-image? Pepperidge farm remembers.
that was some pretty slick border action. I need to inject this knowledge into the designers at work so they only design based off the things I already know ha
I like that that CSS property now exists.
("that that" isn't a typo, it is weird grammar in English)
Perfect, I am coding my small project now, as I am not a designer i try to make things look simple, but i always want to add some artistic touch to them. The transparent border is something i need)
The first 30 seconds are enough to make me feel oooooooooooooold
Last time I use border-image when it was as an exercise in a paper tutorial book and it was almost useless in real world. But now, with a gradient, that might be usable! Thanks!!
border-image is like that one candy on the bottom of the package - you don't really expect so much from it, its name is kind of boring and not really promising, but when you unwrap it, you realize - it is the most delicious candy of all times
4:24 - "I mucked up my bottom a little bit"
I do that from time to time - it's fine
Welcome to the styling side!!
I use these to put 'Final Fantasy 7'-style borders around UI elements on my Twitch streams. They're great!
for gradient border i always use background: linear-gradient and changing border to transparent.
background:
linear-gradient(#fff 0 0) padding-box,
linear-gradient(to right, #9c20aa, #fb3570) border-box;
border: 10px solid transparent;
first linear-gradient is basically your background color to fill only the padding box while sitting on a second linear gradient which is the gradient that fills to the whole border area.
Hey quick question, How do you make the border show up inside the box? Like an inner frame of a Tarot Card? 🙏
@@Way_Of_The_Light I only know how to do it with solid colors with box-shadow inset... Or a negative outline-offset.. creating a pseudo element sortof works too(by making width and height smaller than the parent)...
@@Way_Of_The_Light You can have two borders actually. You can use outline as a second border around it.
I see, Thanks for the answers guys 🙏
These videos should be paid
I think this is the only video about this subject in the internet
KP CSS Tutorials as it's finest. ☝️🙌
Man you just saved my life with this tutorial
Thanks a lot
You just saved me some serious design headache (Y)
Omigosh! I didn't know this was doable! This video would have helped when I needed to do a gradient border a while back. Dang. Haha.
enjoyed the examples at the end.. just wow
Really fantastic thing from border image, thanks for sharing my friend
Thanks for your explanation, very clear and helpful, fantastic!
lol saved me hours with that mozilla border image generator
Holy crap this is mindblowing. Thank you! I'm going to mess around with this on my current project.
this was great. was able to use it immediately at work. Thanks
Amazing!!
You make me fall in love with css!
Get well soon Kevin!
Great content as always!
Thanks for that, I didn't known about border-image
i almost always learn something new, thanks!
Still looking forward to the day when border-image becomes compatible with border radius ;-;
This is amazing! Thanks @Kevin
Your video contents are top notch Sir . Thanks.
How about the gradient border with radius? And transparent background also.
THANK YOU SO MUCH FOR THIS VIDEO
great explanation Kevin ♥
so could you provide us a tutorial about : circular progress border using CSS
We could do something fun with that!
@@KevinPowell thanks a lot for that
Well, that's new
Thank you Kevin
Watching you makes me want to ditch tailwind and just use css
That just made my day 😅
Thanks Kevin
This is really cool. Thank you sir!
"The border property you never knew you needed"
My negative side: "May be because we actually didn't need it?"
My other side: "Just watch and shut up. You might actually happily use that one day".
Excellent video, never used borders like that and I think I will start using it from now on ^_^
If am using border gradient doesn't support border radius. Any solution for this i dont want background-image gradient with border radius.
I've been stuck trying to figure out an animated border-gradient with a Border radius while keeping a transparent background. I've seen ur animated border gradient video but with that method it looked like you need a 'background' for the card at the front to hide the gradient thats behind it.
Is there a way to make an animated border with round corners? The SVG videos gave me the impression the gradient cannot be done in the CSS only in HTML, am I understanding that right?
If you used "fill", would there be a lime green semicircle in the top left?
great video! Thanks kevin!
amazing video, thank you!
how to give border radius while using the linear gradient one?
Using border-image was pretty common before CSS3
I wonder if you design straight in css and hrml or still use figma?
Can you do a video on animating gradient borders
This was great! I am curious however on how you'd mix this with adding a border radius as well. It seems that the two "fight" one another.
Yeah it's one or the other with border-image :)
@@KevinPowell Thank you for this video and for your response. Also, I was the guy who emailed you last week about this very topic. This channel is awesome!
right now if you want a round corner it would have to be included as part of the image. I have a github issue open with the CSSWG on making gradient border-image with work with border-radius.
Would this CSS work when creating an image border?
I've tried it and it does NOT seem to work for an image. For some reason it does not bring in the image even though I tested the URL in a browser and that does open the image.
🤩🤩🤩🤩 ty for making css awesome
How can I do the property of border-radius? when I give the border radius it effects the background color not linear-gradient border
No border radius with the images sadly, you'd have to set the corners of the image up to be rounded
@@KevinPowell but I am using linear gradient color for border, not image
How does this interact with border-radius, and how many of these properties are animatable?
Very useful video, thanks
Also known as a 9 slice on video games 🔥
wow >> you are amazing
Hi Kevin, great video. I have a question, is it possible to do the last border and both sides?
But how do you do it on rounded corners?
Nice video will help me in my next Website 👍
Thanks for the video. Good stuff. Would this be a good use case for throwing a loading "spinner" on a button? I played around a bit and think the Gradient Example 2 approach with an animation altering the deg would make it look like a loading bar and perfect for a button. Throw the loading class on the button when it is clicked, and remove that class when the process is finished.
yeah that's what i was thinking too, especially with example three with a rotate animation
Very beautiful.
This concept is called 9-slice scaling. en.wikipedia.org/wiki/9-slice_scaling I find legacy applications tend to heavily use background graphics, and this technique helps make them responsive.
Could you use container queries to make slice more dynamic?
how can i make it circle, i mean does border-radius work on that ????
Awesome video!!!
It seems like its not possible for border-image to work if you have border-radius on your telement. Or well, the border-image work but it does not follow the shape of the element...
Yeah it's one or the other, but you're image can have round corners if your already going down that route
Thanks! Very useful, as usual.
how to make curve border top left corner in example 3, because border radius isn't working and i don't know why
Can't use this and border radius, it's one or the other sadly... So you need to have the corners round in the image itself
@@KevinPowell ok thanks amazing channel btw :)
What about border-radius with this properties?
Hello! thanks for the video, very help full! which is the right size for an image not to pixel when using this property?
Who does your back-end?
Mind blowing and really beautiful:)
Can you please explain how it works for circular divs or images.
how to do it for rounded borders
How can we do animation on it
is there a way to have one line rather than writing border-image several times?
dang, u r wizard
Great video 🙏🏾🖤
does it work with border-radius?
why border radius doesn't apply to this?
✨ magic ✨
This is brilliant, and very timely for a project I'm working on right now. However I'm struggling a little - I'm using a png with a design on a white background for border image, but my border seems to get a small gradient. I can't work out why or how to remove it. Any advice please?
Don't worry. I fixed it. Only took 2 hours! The gradient was a box shadow from the div above. Obvs really.
its work thx brother 🙏
I really enjoy your tutorials, voice and positive energy, God bless you brother🙏💙
Why this is not working correctly in safari browser?
Would it not be better to pre-slice the corner in Photoshop, and use that as the border-image instead of the full thing? It seems to just mirror the corner over and over to create the border so why not save on resources?
the browser does the slicing for you. These border-image-sources don't tend to be so large that the repetition really causes an issue.
Like captuhu said, as long as the image isn't some giant, bloated image that you're using for no reason, I don't really see the need to pre-slice it. You'll hopefully have a pretty optimized image to start with. I'd start with general image optimization, and if I was really needing to cut down a few more kb, then sure.
also SVG is your best friend for these images. Super small file size and they scale well so you don't need to tweak them for 2x , 3x
Hey quick question, How do you make the border show up inside the box? Like an inner frame of a Tarot Card? 🙏
The image source could have a transparent gap on the outside for the spacing you want there, and then the image/pattern is inset a little bit, then it's just playing with the slicing
@@KevinPowell I see, thank you so much for replying 🙏
genius! thx a lot
how can we animate the linear gradient border , thank you for this i almost forgot how to use border and this video reminded me of it ^^
Because it's an image-source, just like a background-image, we can't animate it sadly. Or well, we could with @property and custom properties, but the support isn't very good.
@@KevinPowell Should be possible with JavaScript, right? Doesn't sound like a good idea, though.
Thanks 👍
Typing "Brilliant!!!" and start watching the video :)
Sir, I would like to see you create a 2D intro with css, and by the way its because of you I loved css. Thank you for the amazing videos.