CSS Angled Corners: A Deep Dive
Creating angled corners using pure CSS can be a challenging task, especially when it comes to preserving the border. However, with careful manipulation of :before and :after elements, it is possible to achieve a close approximation.
Step 1: Container with Border
Begin by adding a border to the container that holds the desired angled shape.
Step 2: :before for Corner Blackout
Next, create a :before element to block out a specific corner. To ensure it covers the border, offset it by -1px.
Step 3: :after for Inner Line
For the angled line within the cut-off corner, introduce an :after element. Offset this slightly from the :before element.
Example Code:
.cutCorner { position: relative; background-color: blue; border: 1px solid silver; display: inline-block; } .cutCorner img { display: block; } .cutCorner:before { position: absolute; left: -1px; top: -1px; content: ''; border-top: 70px solid silver; border-right: 70px solid transparent; } .cutCorner:after { position: absolute; left: -2px; top: -2px; content: ''; border-top: 70px solid white; border-right: 70px solid transparent; }
As noted in the solution, maintaining the thickness of the 45-degree line can be an issue. However, this approach provides a workable solution for creating angled corners with a border.
The above is the detailed content of How Can I Create Angled Corners with Preserved Borders Using Pure CSS?. For more information, please follow other related articles on the PHP Chinese website!