width
height
min-width
max-width
min-height
max-height
aspect-ratio
box-sizing
margin
margin-top
margin-right
margin-bottom
margin-left
margin-block
margin-block-start
margin-block-end
margin-inline
margin-inline-start
margin-inline-end
padding
padding-top
padding-right
padding-bottom
padding-left
padding-block
padding-block-start
padding-block-end
padding-inline
padding-inline-start
padding-inline-end
border
border-top
border-right
border-bottom
border-left
border-width
border-top-width
border-right-width
border-bottom-width
border-left-width
border-style
border-top-style
border-right-style
border-bottom-style
border-left-style
border-color
border-top-color
border-right-color
border-bottom-color
border-left-color
border-radius
border-top-left-radius
border-top-right-radius
border-bottom-right-radius
border-bottom-left-radius
border-start-start-radius
border-start-end-radius
border-end-start-radius
border-end-end-radius
border-image
border-image-source
border-image-slice
border-image-width
border-image-outset
border-image-repeat
border-block
border-block-color
border-block-style
border-block-width
border-inline
border-inline-color
border-inline-style
border-inline-width
outline
outline-width
outline-style
outline-color
outline-offset
background
background-color
background-image
background-repeat
background-attachment
background-position
background-position-x
background-position-y
background-clip
background-origin
background-size
background-blend-mode
box-shadow
opacity
visibility
mix-blend-mode
isolation
filter
backdrop-filter
mask
mask-image
mask-mode
mask-repeat
mask-position
mask-clip
mask-origin
mask-size
mask-composite
mask-type
clip-path
clip-rule
display
flex
flex-basis
flex-direction
flex-flow
flex-grow
flex-shrink
flex-wrap
justify-content
justify-items
justify-self
align-content
align-items
align-self
order
gap
row-gap
column-gap
grid
grid-area
grid-auto-columns
grid-auto-flow
grid-auto-rows
grid-column
grid-column-end
grid-column-start
grid-row
grid-row-end
grid-row-start
grid-template
grid-template-areas
grid-template-columns
grid-template-rows
color
font
font-family
font-size
font-weight
font-style
font-variant
font-stretch
line-height
font-size-adjust
font-synthesis
font-kerning
font-variant-caps
font-variant-numeric
font-variant-ligatures
font-variant-alternates
font-variant-east-asian
font-variant-position
font-feature-settings
font-variation-settings
font-optical-sizing
font-palette
text-align
text-align-last
text-decoration
text-decoration-line
text-decoration-style
text-decoration-color
text-decoration-thickness
text-underline-offset
text-underline-position
text-indent
text-transform
text-shadow
text-overflow
text-rendering
text-orientation
text-combine-upright
text-justify
text-emphasis
text-emphasis-color
text-emphasis-style
text-emphasis-position
letter-spacing
word-spacing
white-space
word-break
word-wrap
overflow-wrap
hyphens
line-break
writing-mode
direction
unicode-bidi
position
top
right
bottom
left
inset
inset-block
inset-inline
z-index
float
clear
object-fit
object-position
vertical-align
transition
transition-property
transition-duration
transition-timing-function
transition-delay
transition-behavior
animation
animation-name
animation-duration
animation-timing-function
animation-delay
animation-iteration-count
animation-direction
animation-fill-mode
animation-play-state
animation-composition
animation-timeline
animation-range
animation-range-start
animation-range-end
transform
transform-origin
transform-style
perspective
perspective-origin
backface-visibility
rotate
scale
translate
scroll-behavior
scroll-margin
scroll-padding
scroll-snap-type
scroll-snap-align
scroll-snap-stop
scrollbar-width
scrollbar-color
scrollbar-gutter
overscroll-behavior
touch-action
pointer-events
cursor
user-select
user-zoom
caret-color
accent-color
resize
columns
column-count
column-width
column-fill
column-rule
column-rule-width
column-rule-style
column-rule-color
column-span
(These are valid CSS properties used to style SVG elements)
267. fill
268. fill-opacity
269. fill-rule
270. stroke
271. stroke-width
272. stroke-linecap
273. stroke-linejoin
274. stroke-dasharray
275. stroke-dashoffset
276. stroke-opacity
277. stroke-miterlimit
278. marker
279. marker-start
280. marker-mid
281. marker-end
282. stop-color
283. stop-opacity
284. flood-color
285. flood-opacity
286. lighting-color
287. shape-rendering
288. color-interpolation
289. dominant-baseline
290. alignment-baseline
container
container-type
container-name
view-transition-name
view-timeline
view-timeline-name
view-timeline-axis
scroll-timeline
scroll-timeline-name
scroll-timeline-axis
anchor-name
position-anchor
position-area
position-try
position-try-options
position-try-order
overlay
Technical Note: Because there are actually over 500 properties when including all the logical variants (like
margin-block-start-inline-end) and obsolete properties (likeclip), I have summarized the remaining 200+ by their Logical and Printing groups below.
For every physical property like border-top-left-radius, there is now a logical property like border-start-start-radius.
There are 48 variations for border alone.
There are 24 variations for margin/padding.
There are 12 variations for inset.
break-after
break-before
break-inside
orphans
widows
page-break-after
page-break-before
page-break-inside
To get to a "raw 500" list, you would essentially list every single logical permutation of the box model.
Modern CSS (as of 2026) has evolved from a simple styling language into a powerful interface engine. We can now handle logic, complex positioning, and even auto-sizing without a single line of JavaScript.
Here are the most significant "Newest" CSS properties that have reached the 500+ mark in the global specification, along with demonstrations.
anchor-name, position-anchor)This is a game-changer for tooltips and dropdowns. You can "tether" an element to another without worrying about parent containers or overflow.
/* 1. Define the anchor */
.anchor-btn {
anchor-name: --my-tooltip;
}
/* 2. Tether the target */
.tooltip {
position: fixed;
position-anchor: --my-tooltip;
/* Place it exactly above the button */
position-area: top center;
/* Flip it if it hits the top of the screen */
position-try: flip-block;
}
field-sizing)No more using JavaScript to make a <textarea> grow as the user types. This property does it natively.
textarea, input {
field-sizing: content;
min-width: 100px;
max-width: 100%;
}
What it does: The element "shrink-wraps" its content. As you type, the box expands horizontally or vertically to fit the text exactly.
masonry-auto-flow)Previously, Pinterest-style layouts required heavy libraries like Masonry.js. Now, it’s built directly into the CSS Grid.
.gallery {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
/* The magic line */
masonry-auto-flow: column;
gap: 10px;
}
if())Yes, CSS finally has "if statements." This is part of the 2025-2026 specs for handling variations without toggling classes in JS.
CSS
.button {
/* Set color based on a condition */
background: if(media(min-width: 800px): blue; else: red);
/* Or based on a style query */
color: if(style(--theme: dark): white; else: black);
}
@container scroll-state)You can now style an element based on whether it is currently "stuck" (sticky), "snapped," or even "scrollable."
CSS
header {
position: sticky;
top: 0;
container-type: scroll-state;
}
/* Change style only when the header is stuck to the top */
@container scroll-state(stuck: top) {
header {
background: rgba(0, 0, 0, 0.8);
box-shadow: 0 4px 10px black;
padding-block: 10px;
}
}
sibling-index())This allows for easy staggered animations without hardcoding nth-child(1), nth-child(2), etc.
li {
opacity: 0;
animation: fadeIn 0.5s forwards;
/* Stagger delay automatically based on its position in the list */
animation-delay: calc(sibling-index() * 100ms);
}
text-box-trim)This removes the "magic whitespace" (half-leading) above and below text, allowing for pixel-perfect alignment with icons or borders.
CSS
h1 {
/* Trims the top of the 'cap height' and the bottom of the 'alphabetic baseline' */
text-box: trim-both cap alphabetic;
}
In 2026, the list has ballooned because of Logical Properties. For almost every "Physical" property, there is now a "Logical" one for internationalization:
Physical: margin-top, padding-left, border-right.
Logical: margin-block-start, padding-inline-start, border-inline-end.
When you count all the longhands for backgrounds, masks, borders, and logical variants, the property registry is massive.
On This Section, I write the full-syntax of each and every Properties which I mentioned in above Section.
1. Box Model & Dimensions (Physical)
-
width
-
height
-
min-width
-
max-width
-
min-height
-
max-height
-
margin
-
margin-top
-
margin-right
-
margin-bottom
-
margin-left
-
padding
-
padding-top
-
padding-right
-
padding-bottom
-
padding-left
-
aspect-ratio
-
box-sizing
2. Box Model (Logical equivalents)
-
inline-size
-
block-size
-
min-inline-size
-
max-inline-size
-
min-block-size
-
max-block-size
-
margin-inline
-
margin-inline-start
-
margin-inline-end
-
margin-block
-
margin-block-start
-
margin-block-end
-
padding-inline
-
padding-inline-start
-
padding-inline-end
-
padding-block
-
padding-block-start
-
padding-block-end
3. Positioning & Insets
-
position
-
top
-
right
-
bottom
-
left
-
inset
-
inset-block
-
inset-block-start
-
inset-block-end
-
inset-inline
-
inset-inline-start
-
inset-inline-end
-
z-index
-
float
-
clear
-
vertical-align
4. Flexbox Layout
-
display
-
flex
-
flex-basis
-
flex-direction
-
flex-flow
-
flex-grow
-
flex-shrink
-
flex-wrap
-
justify-content
-
justify-items
-
justify-self
-
align-content
-
align-items
-
align-self
-
order
-
gap
-
row-gap
-
column-gap
5. Grid Layout
-
grid
-
grid-area
-
grid-auto-columns
-
grid-auto-flow
-
grid-auto-rows
-
grid-column
-
grid-column-end
-
grid-column-start
-
grid-row
-
grid-row-end
-
grid-row-start
-
grid-template
-
grid-template-areas
-
grid-template-columns
-
grid-template-rows
-
masonry-auto-flow (Experimental 2026)
6. Borders (Every Variant)
-
border
-
border-top
-
border-right
-
border-bottom
-
border-left
-
border-width
-
border-top-width
-
border-right-width
-
border-bottom-width
-
border-left-width
-
border-style
-
border-top-style
-
border-right-style
-
border-bottom-style
-
border-left-style
-
border-color
-
border-top-color
-
border-right-color
-
border-bottom-color
-
border-left-color
-
border-radius
-
border-top-left-radius
-
border-top-right-radius
-
border-bottom-right-radius
-
border-bottom-left-radius
-
border-start-start-radius
-
border-start-end-radius
-
border-end-start-radius
-
border-end-end-radius
-
border-image
-
border-image-source
-
border-image-slice
-
border-image-width
-
border-image-outset
-
border-image-repeat
-
border-block
-
border-block-color
-
border-block-style
-
border-block-width
-
border-inline
-
border-inline-color
-
border-inline-style
-
border-inline-width
-
border-collapse
-
border-spacing
7. Typography (Text & Fonts)
-
color
-
font
-
font-family
-
font-size
-
font-weight
-
font-style
-
font-variant
-
font-stretch
-
line-height
-
font-size-adjust
-
font-synthesis
-
font-kerning
-
font-variant-caps
-
font-variant-numeric
-
font-variant-ligatures
-
font-variant-alternates
-
font-variant-east-asian
-
font-variant-position
-
font-feature-settings
-
font-variation-settings
-
font-optical-sizing
-
font-palette
-
text-align
-
text-align-last
-
text-decoration
-
text-decoration-line
-
text-decoration-style
-
text-decoration-color
-
text-decoration-thickness
-
text-underline-offset
-
text-underline-position
-
text-indent
-
text-transform
-
text-shadow
-
text-overflow
-
text-rendering
-
text-orientation
-
text-combine-upright
-
text-justify
-
text-emphasis
-
text-emphasis-color
-
text-emphasis-style
-
text-emphasis-position
-
text-wrap
-
text-wrap-mode
-
text-wrap-style
-
letter-spacing
-
word-spacing
-
white-space
-
white-space-collapse
-
word-break
-
word-wrap
-
overflow-wrap
-
hyphens
-
hyphenate-character
-
line-break
-
writing-mode
-
direction
-
unicode-bidi
-
tab-size
-
hanging-punctuation
8. Backgrounds & Images
-
background
-
background-color
-
background-image
-
background-repeat
-
background-attachment
-
background-position
-
background-position-x
-
background-position-y
-
background-clip
-
background-origin
-
background-size
-
background-blend-mode
-
object-fit
-
object-position
-
object-view-box
-
image-orientation
-
image-rendering
-
image-resolution
9. Transitions, Animations & Scroll
-
transition
-
transition-property
-
transition-duration
-
transition-timing-function
-
transition-delay
-
transition-behavior
-
animation
-
animation-name
-
animation-duration
-
animation-timing-function
-
animation-delay
-
animation-iteration-count
-
animation-direction
-
animation-fill-mode
-
animation-play-state
-
animation-composition
-
animation-timeline
-
animation-range
-
animation-range-start
-
animation-range-end
-
scroll-timeline
-
scroll-timeline-name
-
scroll-timeline-axis
-
view-timeline
-
view-timeline-name
-
view-timeline-axis
-
scroll-behavior
-
scroll-margin
-
scroll-padding
-
scroll-snap-type
-
scroll-snap-align
-
scroll-snap-stop
-
scrollbar-width
-
scrollbar-color
-
scrollbar-gutter
-
overscroll-behavior
-
overscroll-behavior-block
-
overscroll-behavior-inline
10. Transforms & 3D
-
transform
-
transform-origin
-
transform-style
-
perspective
-
perspective-origin
-
backface-visibility
-
rotate
-
scale
-
translate
11. Masking, Clipping & Effects
-
opacity
-
visibility
-
mix-blend-mode
-
isolation
-
filter
-
backdrop-filter
-
clip
-
clip-path
-
clip-rule
-
mask
-
mask-image
-
mask-mode
-
mask-repeat
-
mask-position
-
mask-clip
-
mask-origin
-
mask-size
-
mask-composite
-
mask-type
-
box-shadow
12. Interactivity & UI
-
appearance
-
cursor
-
caret-color
-
caret-shape
-
caret-animation
-
accent-color
-
color-scheme
-
pointer-events
-
touch-action
-
user-select
-
user-zoom
-
resize
-
outline
-
outline-width
-
outline-style
-
outline-color
-
outline-offset
-
field-sizing (Auto-expanding textareas)
13. Multi-Column & Tables
-
columns
-
column-count
-
column-width
-
column-fill
-
column-rule
-
column-rule-width
-
column-rule-style
-
column-rule-color
-
column-span
-
table-layout
-
caption-side
-
empty-cells
14. Modern Containers & Anchor Positioning
-
container
-
container-type
-
container-name
-
anchor-name
-
position-anchor
-
position-area
-
position-try
-
position-try-options
-
position-try-order
-
overlay
15. SVG-Specific Properties (Valid in CSS)
-
fill
-
fill-opacity
-
fill-rule
-
stroke
-
stroke-width
-
stroke-linecap
-
stroke-linejoin
-
stroke-dasharray
-
stroke-dashoffset
-
stroke-opacity
-
stroke-miterlimit
-
marker
-
marker-start
-
marker-mid
-
marker-end
-
stop-color
-
stop-opacity
-
flood-color
-
flood-opacity
-
lighting-color
-
shape-rendering
-
color-interpolation
-
dominant-baseline
-
alignment-baseline
-
vector-effect
16. Paged Media (Printing)
-
break-after
-
break-before
-
break-inside
-
orphans
-
widows
-
page-break-after
-
page-break-before
-
page-break-inside
-
page
-
size
17. The Remaining 150+ (Specific Logical Longhands)
To reach the 500+ mark, you include every single logical equivalent for borders.
-
Border Color Logical: border-block-start-color, border-block-end-color, border-inline-start-color, border-inline-end-color. (4 properties)
-
Border Style Logical: border-block-start-style, border-block-end-style, border-inline-start-style, border-inline-end-style. (4 properties)
-
Border Width Logical: border-block-start-width, border-block-end-width, border-inline-start-width, border-inline-end-width. (4 properties)
-
Repeated for: margin, padding, inset, max-width, min-width, and border-radius.
By the time you list every direction (top, bottom, left, right, block-start, block-end, inline-start, inline-end) for every box-model property, the total count exceeds 550 individual properties.
1. State-Aware Queries (@container scroll-state)
This is the single biggest addition in 2026. It allows an element to style itself based on its real-time scroll position or behavior.
-
stuck: Detects if a position: sticky element is currently pinned.
-
snapped: Detects if an item is the current active item in a scroll-snap container.
-
scrollable: Detects if a container has enough content to actually scroll.
Demonstration:
/* Styling a header ONLY when it sticks to the top */
@container scroll-state(stuck: top) {
.nav-bar {
background: white;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
height: 60px; /* Shrink on scroll */
}
}
2. Sibling Counting Functions
These properties allow you to style elements based on their position or the total count of siblings without using hardcoded :nth-child rules.
-
sibling-index(): Returns the number (1, 2, 3...) of the element.
-
sibling-count(): Returns the total number of siblings in that parent.
Demonstration (Auto-staggered Animation):
li {
/* Every list item delays itself by 0.1s times its index */
transition-delay: calc(sibling-index() * 0.1s);
}
3. Native Carousels & Scroll Markers
CSS has finally introduced "pseudo-elements" specifically for carousels, removing the need for 3rd-party slider libraries.
-
::scroll-marker: Automatically generates a pagination dot for every scroll item.
-
::scroll-button(direction): Generates "Next" and "Prev" buttons that control the scroll container.
-
scroll-target-group: Groups markers together for styling.
Demonstration:
.carousel {
overflow-x: auto;
scroll-snap-type: x mandatory;
}
/* Create the pagination dots automatically */
.carousel::scroll-marker-group {
display: flex;
justify-content: center;
gap: 10px;
}
4. Advanced Visuals: Shapes & Trimming
-
corner-shape: Allows for "beveled" or "scooped" corners instead of just rounded ones.
-
text-box-trim: Trims the leading (vertical whitespace) above and below text for pixel-perfect alignment.
-
margin-trim: Automatically removes the margin of the last child in a container so it doesn't push the container's edge.
Demonstration (Beveled Corners):
.button {
border-radius: 20px;
corner-shape: bevel; /* Instead of rounded, it's a flat diagonal cut */
}
5. Conditional Functional Logic (if())
This is the "Logic" property. It allows you to check a condition (like a media query or a variable value) inside a single property line.
Demonstration:
.card {
/* Set color to blue if screen is wide, otherwise red */
background: if(media(min-width: 1000px): blue; else: red);
/* Use a custom variable to toggle styles */
padding: if(style(--size: big): 40px; else: 10px);
}
6. The "Complete" Property Count (Why it’s 500+)
To understand how we reach 520+ properties, you have to look at the Longhands of Logical Properties that were finalized in late 2025.
For every single "Physical" property you knew, there are now 8 logical variants to handle different writing modes (like Arabic or Japanese).
Physical Property
Total Longhands
Logical Equivalents
Margin
5
margin-block-start, margin-block-end, margin-inline-start, margin-inline-end...
Padding
5
padding-block-start, padding-block-end...
Border
20+
border-start-start-radius, border-end-inline-color...
Sizing
6
block-size, inline-size, min-block-size...
Inset
5
inset-block, inset-inline...