This feature is not Baseline because it does not work in some of the most widely-used browsers.
The CSSPositionTryRule interface describes an object representing a @position-try at-rule.
Inherits properties from its ancestor CSSRule.
CSSPositionTryRule.name Read only
Represents the name of the position try option specified by the @position-try at-rule's <dashed-ident>.
CSSPositionTryRule.style Read only
A CSSPositionTryDescriptors object that represents the declarations set in the body of the @position-try at-rule.
No specific methods; inherits methods from its ancestor CSSRule.
The CSS includes a @position-try at-rule with a name of --custom-left and three descriptors.
@position-try --custom-left {
position-area: left;
width: 20%;
max-width: 200px;
margin-right: 10px;
}
const myRules = document.styleSheets[0].cssRules; const tryOption = myRules[0]; // a CSSPositionTryRule console.log(tryOption); // "[object CSSPositionTryRule]" console.log(tryOption.name); // "--custom-left" console.log(tryOption.style); // "[object CSSPositionTryDescriptors]" console.log(tryOption.style.maxWidth); // "200px"
| Specification |
|---|
| CSS Anchor Positioning> # csspositiontryrule> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
CSSPositionTryRule |
125 | 125 | 131 | 111 | 26 | 125 | No | 83 | 26 | 27.0 | 125 | 26 |
name |
125 | 125 | 131 | 111 | 26 | 125 | No | 83 | 26 | 27.0 | 125 | 26 |
style |
125 | 125 | 131 | 111 | 26 | 125 | No | 83 | 26 | 27.0 | 125 | 26 |
CSSPositionTryDescriptors@position-tryposition-try-fallbacks
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CSSPositionTryRule