Home Web Front-end CSS Tutorial Sample code sharing for making borders using CSS3's linear gradient

Sample code sharing for making borders using CSS3's linear gradient

Mar 09, 2017 pm 05:16 PM

Linear-gradient lines are quite powerful for making borders, especially using their strokes to create some copied border effects. Here we will take a look at the sample code sharing of using CSS3 linear gradient linear-gradient to make borders.

Generally, the stroke line of the app border is less than one pixel, so I directly traced the 1px border as usual. Although it is 1px, the result is completely different from the stroke in the app, "thick" , so I searched online to see if there was a solution, but I couldn’t find it after searching for a while. What should I do? If the demand side doesn’t want to be so rough, then I have to solve it by myself.
So I used the previous method to think of linear-gradient

.line li{  border: none;   
  background-image: -webkit-linear-gradient(#222 50%,transparent 50%);   
  background-image: -moz-linear-gradient(#222 50%,transparent 50%);   
  background-image: -o-linear-gradient(#222 50%,transparent 50%);   
  background-image: linear-gradient(#222 50%,transparent 50%);   
  background-size:  100% 1px;   
  background-repeat: no-repeat;   
  background-position: bottombottom;}
<ul class="line">
    <li>linear-gradient</li>
    <li>linear-gradient</li>
    <li>linear-gradient</li>
</ul>

OK, it’s out again, but it’s still a little flawed. Then the problem comes, which is to change the stroke. The position (left, top, right, bottom) needs to modify the parameters

For example, the left stroke needs to be changed:

background-image: -webkit-linear-gradient(left ,transparent 50%,#222 50%);   
background-size:  1px 100%;   
background-position: left;

The specific ones are not listed one by one.


Use linear to create complex border effects
In addition, I saw a method on the Internet to use the linear-gradient attribute to create a gorgeous border effect. First, the code is given. You can check the effect on your computer:

<!DOCTYPE html>     

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">     
<head>     
    <meta charset="utf-8" />     
    <title></title>     
    <style>     
        .box {     
            margin: 80px 30px;     
            width: 200px;     
            height: 200px;     
            position: relative;     
            background: #fff;     
            float: left;     
        }     

            .box:before {     
                content: &#39;&#39;;     
                z-index: -1;     
                position: absolute;     
                width: 220px;     
                height: 220px;     
                top: -10px;     
                left: -10px;     
            }     

        .first:before {     
            background-image: linear-gradient(90deg, yellow, gold);     
        }     

        .second:before {     
            background-image: linear-gradient(0deg, orange, red);     
        }     

        .third:before {     
            background-image: repeating-linear-gradient(-45deg,#cc2a2d,#cc2a2d 30px,#f2f2f2 30px,#f2f2f2 40px,#0e71bb 40px,#0e71bb 70px,#f2f2f2 70px,#f2f2f2 80px);     
        }     
    </style>     
</head>     
<body>     
    <p class="box first"></p>     
    <p class="box second"></p>     
    <p class="box third"></p>     
</body>     
</html>


As you can see from the code, we actually do not use borders. So how is this border effect achieved?
The general idea is that we first define a white p, and then define a colored p that is a circle larger than a white square. Overlap the two and let the white p cover the colored p to achieve the effect of a border.
There are many css knowledge points used here.
1. :before pseudo-class
From the above code, we can see that we actually define a :before pseudo-class in the defined white p, and put all the styles of the colored squares here. This is because using the :before definition can make positioning more convenient. Just adjust top and left to the width of the border. At the same time, the two become a whole.
2. Linear-gradient
Many browsers now support this css method. This method has the following three usage modes:
①background:linear-gradient(top,#fff,#000)
This code means that it starts from white at the top and transitions to black at the bottom.
②background:linear-gradient(top,right,#fff,#000)
This code passes two parameters about the position, top and right, which means starting from the upper right and changing to the lower left. Other reasons Same as the first one.
③background:linear-gradient(30deg,#fff,#000)
The first parameter of this code passes the angle. In fact, the principle and position are the same, but it does not change from the standard position. . So what is the corresponding relationship between angle and position? According to experiments, 0 degrees corresponds to bottom, 90 degrees corresponds to left, 180 degrees corresponds to top, and 360 degrees corresponds to right.
The above is the code and explanation for using the linear method to achieve gorgeous borders. You can implement it locally to discover more novel combination implementation methods.

The above is the detailed content of Sample code sharing for making borders using CSS3's linear gradient. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undress AI Tool

Undress AI Tool

Undress images for free

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

PHP Tutorial
1504
276
What is the difference between display: inline, display: block, and display: inline-block? What is the difference between display: inline, display: block, and display: inline-block? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:inline,block,andinline-blockinHTML/CSSarelayoutbehavior,spaceusage,andstylingcontrol.1.Inlineelementsflowwithtext,don’tstartonnewlines,ignorewidth/height,andonlyapplyhorizontalpadding/margins—idealforinlinetextstyling

Styling visited links differently with CSS Styling visited links differently with CSS Jul 11, 2025 am 03:26 AM

Setting the style of links you have visited can improve the user experience, especially in content-intensive websites to help users navigate better. 1. Use CSS's: visited pseudo-class to define the style of the visited link, such as color changes; 2. Note that the browser only allows modification of some attributes due to privacy restrictions; 3. The color selection should be coordinated with the overall style to avoid abruptness; 4. The mobile terminal may not display this effect, and it is recommended to combine it with other visual prompts such as icon auxiliary logos.

How to create responsive images using CSS? How to create responsive images using CSS? Jul 15, 2025 am 01:10 AM

To create responsive images using CSS, it can be mainly achieved through the following methods: 1. Use max-width:100% and height:auto to allow the image to adapt to the container width while maintaining the proportion; 2. Use HTML's srcset and sizes attributes to intelligently load the image sources adapted to different screens; 3. Use object-fit and object-position to control image cropping and focus display. Together, these methods ensure that the images are presented clearly and beautifully on different devices.

What are common CSS browser inconsistencies? What are common CSS browser inconsistencies? Jul 26, 2025 am 07:04 AM

Different browsers have differences in CSS parsing, resulting in inconsistent display effects, mainly including the default style difference, box model calculation method, Flexbox and Grid layout support level, and inconsistent behavior of certain CSS attributes. 1. The default style processing is inconsistent. The solution is to use CSSReset or Normalize.css to unify the initial style; 2. The box model calculation method of the old version of IE is different. It is recommended to use box-sizing:border-box in a unified manner; 3. Flexbox and Grid perform differently in edge cases or in old versions. More tests and use Autoprefixer; 4. Some CSS attribute behaviors are inconsistent. CanIuse must be consulted and downgraded.

Describe the `opacity` property Describe the `opacity` property Jul 15, 2025 am 01:23 AM

opacity is an attribute in CSS that controls the overall transparency of an element, with values ranging from 0 (fully transparent) to 1 (fully opaque). 1. It is often used for the image hover fade effect, and enhances the interactive experience by setting the opacity transition; 2. Making a background mask layer to improve text readability; 3. Visual feedback of control buttons or icons in the disabled state. Note that it affects all child elements, unlike rgba, which only affects the specified color part. Smooth animation can be achieved with transition, but frequent use may affect performance. It is recommended to use it in combination with will-change or transform. Rational application of opacity can enhance page hierarchy and interactivity, but it should avoid interfering with users.

What is the accent-color property? What is the accent-color property? Jul 26, 2025 am 09:25 AM

accent-color is an attribute used in CSS to customize the highlight colors of form elements such as checkboxes, radio buttons and sliders; 1. It directly changes the default color of the selected state of the form control, such as changing the blue check mark of the checkbox to red; 2. Supported elements include input boxes of type="checkbox", type="radio" and type="range"; 3. Using accent-color can avoid complex custom styles and extra DOM structures, and maintain native accessibility; 4. It is generally supported by modern browsers, and old browsers need to be downgraded; 5. Set accent-col

Describe the `:has()` pseudo-class (Parent selector) Describe the `:has()` pseudo-class (Parent selector) Jul 15, 2025 am 12:32 AM

The:has()pseudo-classinCSSallowstargetingaparentelementbasedonitschildelements.Itworksbyusingthesyntaxparent:has(child-selector)toapplystylesconditionally.Forexample,div:has(img)appliesstylestoadivcontaininganimage.Multipleselectorscanbeusedwithcomma

Understanding the css box-sizing property: content-box vs border-box Understanding the css box-sizing property: content-box vs border-box Jul 12, 2025 am 03:21 AM

Why does a box with a width of 100px be displayed wider? Because the content-box model is used by default, the actual width includes content, padding and border. 1. By default, box-sizing is content-box, and the width set only refers to the content area. padding and border will add additional overall width; 2. Use border-box to make the width set include content, padding and border, and the layout is more intuitive; 3. It is recommended to set box-sizing: border-box globally to avoid layout misalignment, which is especially suitable for responsive design; 4. Conte can be used in special scenarios

See all articles