CSS Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.Anti-spam check. Do not fill this in! ==Limitations== Some noted limitations of the current capabilities of CSS include: ===Cannot explicitly declare new scope independently of position=== Scoping rules for properties such as z-index look for the closest parent element with a position: absolute or position: relative attribute. This odd coupling has undesired effects. For example, it is impossible to avoid declaring a new scope when one is forced to adjust an element's position, preventing one from using the desired scope of a parent element. ===Pseudo-class dynamic behavior not controllable=== CSS implements pseudo-classes that allow a degree of user feedback by conditional application of alternate styles. One CSS pseudo-class, "{{code|lang=css|code=:hover}}", is dynamic (equivalent of JavaScript "onmouseover") and has potential for misuse (e.g., implementing cursor-proximity popups),<ref>{{cite web |url=https://meyerweb.com/eric/css/edge/popups/demo.html |title=Pure CSS Popups |publisher=meyerweb.com |access-date=2009-11-19 |archive-url=https://web.archive.org/web/20091209071014/https://meyerweb.com/eric/css/edge/popups/demo.html |archive-date=2009-12-09 |url-status=dead }}</ref> but CSS has no ability for a client to disable it (no "disable"-like property) or limit its effects (no "nochange"-like values for each property). ===Cannot name rules=== There is no way to name a CSS rule, which would allow (for example) client-side scripts to refer to the rule even if its selector changes. ===Cannot include styles from a rule into another rule=== CSS styles often must be duplicated in several rules to achieve the desired effect, causing additional maintenance and requiring more thorough testing. Some new CSS features were proposed to solve this but were abandoned afterward.<ref>{{cite web|url=https://tabatkins.github.io/specs/css-apply-rule/|author=Tab Atkins Jr.|title=CSS apply rule|publisher=GitHub|access-date=2016-02-27|archive-url=https://web.archive.org/web/20160222160949/https://tabatkins.github.io/specs/css-apply-rule/|archive-date=2016-02-22|url-status=dead}}</ref><ref>{{Cite web|url=https://www.xanthir.com/b4o00|title = Why I Abandoned @apply β Tab Completion}}</ref> Instead, authors may gain this ability by using more sophisticated stylesheet languages which compile to CSS, such as [[Sass (stylesheet language)|Sass]], [[Less (stylesheet language)|Less]], or [[Stylus (stylesheet language)|Stylus]]. ===Cannot target specific text without altering markup=== Besides the {{code|lang=css|code=:first-letter}} pseudo-element, one cannot target specific ranges of text without needing to utilize placeholder elements. Summary: Please note that all contributions to Christianpedia may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here. You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Christianpedia:Copyrights for details). Do not submit copyrighted work without permission! Cancel Editing help (opens in new window) Discuss this page