Home >Web Front-end >CSS Tutorial >12 Little-Known CSS Facts (The Sequel)

12 Little-Known CSS Facts (The Sequel)

Joseph Gordon-Levitt
Joseph Gordon-LevittOriginal
2025-02-24 08:33:14922browse

This article unveils twelve lesser-known CSS facts, perfect for both beginners and experienced developers. While some may be familiar, others offer surprising insights into CSS capabilities.

12 Little-Known CSS Facts (The Sequel)

Artwork by SitePoint/Natalia Balska.

Key Highlights:

  • border-radius Slash Syntax: Create asymmetrical rounded corners using a slash to define horizontal and vertical radii separately.
  • font-weight Relative Keywords: Use bolder and lighter to dynamically adjust font weight relative to inherited values.
  • outline-offset Property: Visually offset outlines without layout changes (limited IE support).
  • table-layout Property: Optimize table rendering speed with a fixed layout independent of cell content.
  • vertical-align Behavior: Understand its distinct behavior for table cells versus other elements.
  • ::first-letter Pseudo-element: Leverage its capabilities for advanced typographic effects on block-level elements.

Let's delve into the details:

  1. border-radius Slash Syntax: The border-radius property accepts a slash to specify separate horizontal and vertical radii, enabling non-symmetrical rounded corners. See the MDN interactive demo for a visual understanding:

  2. font-weight Relative Keywords: bolder and lighter keywords adjust font weight relative to the inherited value, offering more dynamic typographic control, especially with fonts having multiple weights.

  3. outline-offset Property: This property offsets the outline from the element, enhancing visual appeal without affecting layout. Note the lack of Internet Explorer support.

  4. table-layout Property: Using table-layout: fixed significantly speeds up table rendering by making the layout independent of cell content.

  5. vertical-align in Tables: vertical-align affects content alignment within table cells, unlike its behavior on other elements.

  6. ::first-letter Pseudo-element: This pseudo-element consistently styles the first letter of block-level elements across major browsers, enabling sophisticated typographic effects.

  7. Invalid Characters as Class Delimiters: While technically invalid, certain characters (like "/") can be used as delimiters in HTML class lists for improved readability; however, they cannot be directly used as class names in CSS.

  8. Fractional Animation Iterations: The animation-iteration-count property accepts fractional values, allowing animations to stop mid-iteration. Note browser compatibility variations may exist.

  9. Animation Shorthand Conflicts: Avoid using animation names that conflict with animation shorthand keywords (e.g., reverse, alternate).

  10. Selecting Element Ranges: Chain :nth-child selectors to efficiently select ranges of elements. Browser compatibility should be considered.

  11. Pseudo-elements on Void Elements: While not applicable to all void elements, pseudo-elements can be applied to some, such as <hr>.

  12. Case-Insensitive Attribute Values: Attribute selectors are case-sensitive for some attributes (like class) but not others (like type).

This expanded exploration of often-overlooked CSS features empowers developers to write more efficient and expressive code. Let us know your favorite obscure CSS tricks in the comments!

Frequently Asked Questions (FAQs) about CSS: (This section is omitted for brevity, as it is unrelated to the main topic and significantly expands the response length. It can be added separately if needed.)

The above is the detailed content of 12 Little-Known CSS Facts (The Sequel). For more information, please follow other related articles on the PHP Chinese website!

Statement:
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