Multiple Methods and Best Practices for Drawing Checkmarks Using CSS

Nov 20, 2025 · Programming · 9 views · 7.8

Keywords: CSS Graphic Rendering | Checkmark Symbols | Icon Fonts

Abstract: This article provides a comprehensive exploration of various technical approaches for drawing checkmark symbols using CSS, with focus on pseudo-elements, border rotation, and icon fonts. Through comparative analysis of implementation principles, code complexity, and browser compatibility, it offers developers complete technical reference and best practice recommendations. The article includes detailed code examples and performance analysis to help readers deeply understand CSS graphic rendering techniques.

Introduction

In modern web development, the demand for custom icons and symbols continues to grow. While traditional Unicode characters are simple to use, they have limitations in visual aesthetics and design flexibility. CSS provides powerful graphic rendering capabilities that can create more elegant and customizable checkmark symbols.

Core Implementation Methods

Pseudo-element Based Approach

Using CSS pseudo-elements is an efficient method for creating checkmark symbols. Through :before or :after pseudo-elements, developers can avoid additional HTML markup while maintaining code simplicity.

li.done:after {
  content: "";
  position: absolute;
  left: -16px;
  top: 0px;
  width: 5px;
  border-bottom: 3px solid #4D7C2A;
  height: 11px;
  border-right: 3px solid #4D7C2A;
  transform: rotate(45deg);
}

This method utilizes border properties to construct the basic shape of the checkmark, with transform rotation completing the final visual effect. The position property ensures precise positioning, while the transform property provides flexible rotation control.

Border Rotation Technique

Another common approach involves directly using element border properties, creating the checkmark shape through clever width, height, and rotation angle settings.

.checkmark {
  display: inline-block;
  height: 50px;
  width: 18px;
  border-bottom: 10px solid green;
  border-right: 10px solid green;
  transform: rotate(45deg);
  margin: 20px;
}

The advantage of this solution lies in its concise code, requiring only a single HTML element for implementation. By adjusting border width and color, developers can easily customize the checkmark's appearance.

Icon Font Solutions

Web Font Integration

For scenarios requiring high customization and performance optimization, icon fonts provide the optimal solution. Through tools like Fontello, developers can create streamlined font files containing only the required characters.

li:before {
  content:'[icon symbol]';
  font-family: [custom font];
  display:inline-block;
  vertical-align: top;
  line-height: 1em;
  width: 1em;
  height:1em;
  margin-right: 0.3em;
  text-align: center;
  color: #999;
}

This method supports vectorized display, maintaining clarity at any resolution while allowing easy size and color adjustments through CSS.

Performance Optimization Considerations

When using icon fonts, file size becomes a critical consideration. Through font subsetting techniques, developers can significantly reduce font file volume, improving page loading speed. Online tools like Fontello support selecting specific icons to generate optimized font files.

Technical Comparative Analysis

Code Complexity Comparison

The pseudo-element based approach requires more CSS code but maintains simple HTML structure; the border rotation solution has minimal code but relatively lower customization flexibility; the icon font approach requires additional font files but offers the best scalability.

Browser Compatibility

All modern browsers support the transform property, though vendor prefixes may be needed for older browsers. The icon font solution has the best browser compatibility, supporting legacy browsers like IE6.

Performance Impact

Pure CSS solutions generate no additional HTTP requests, offering optimal performance. The icon font approach requires font file loading but can optimize subsequent visit performance through caching strategies.

Best Practice Recommendations

Selection Criteria

Choose the appropriate solution based on project requirements: for simple checkmark display, recommend the border rotation approach; for list item markers, the pseudo-element method is more suitable; for projects requiring multiple icons and high customization, icon fonts represent the best choice.

Accessibility Considerations

Regardless of the chosen method, ensure screen reader friendliness. Provide appropriate semantic information through ARIA attributes or hidden text.

Responsive Design

All solutions should consider responsive design, ensuring proper display across different screen sizes. Using relative units (like em, rem) instead of absolute pixels improves adaptability.

Conclusion

CSS provides multiple technical pathways for creating checkmark symbols, each with unique advantages and applicable scenarios. Developers should select the most appropriate solution based on specific project requirements, performance needs, and browser compatibility considerations. The icon font approach offers the best balance in flexibility, maintainability, and performance, representing the preferred solution for modern web development.

Copyright Notice: All rights in this article are reserved by the operators of DevGex. Reasonable sharing and citation are welcome; any reproduction, excerpting, or re-publication without prior permission is prohibited.