- From: Marat Tanalin <mtanalin@yandex.ru>
- Date: Tue, 02 Dec 2014 00:31:43 +0300
- To: "luochen.1990@gmail.com" <luochen.1990@gmail.com>, www-style list <www-style@w3.org>
01.12.2014, 22:54, "LuoChen" <luochen1990@gmail.com>:
> Hi, guys, I want new pseudo-elements in css: ::inner-wrapper &
> ::outer-wrapper . which creates a nested pseudo-element inside/outside
> the current element. This way, we can reduce a lot of situations where
> we have to change the html structure only for styling requirement.
Wrapping single elements would be of limited usefulness (though still better than nothing).
What's more demanded is ability to pseudo-wrap _multiple_ sibling elements, so that we could style, for example, `DT`/`DD` groups as a single thing without need for wrapping each such group in its own `DL` (we can't wrap them in `DIV` per HTML spec) and wrapping each such `DL` in `LI` inside `UL` to preserve marking items up together as a solid list.
For example, if we need to style each `DT`/`DD` group, we are currently forced to do this:
<ul>
<li><dl>
<dt>Foo</dt>
<dd>Bar</dd>
</dl></li>
<li><dl>
<dt>Lorem</dt>
<dd>Ipsum</dd>
</dl></li>
</ul>
With CSS preudo-wrappers, we could have a single continuous `DL` in HTML:
<dl class="example">
<dt>Foo</dt>
<dd>Bar</dd>
<dt>Lorem</dt>
<dd>Ipsum</dd>
</dl>
and then style `DT`/`DD` groups inside it somehow like this:
DL.example > DT {group-open: myGroupName; }
DL.example > DD {group-close: myGroupName; }
/* Show green border around each `DT`/`DD` group. */
::group(myGroupName) {
border: 2px solid #0d0;
}
By the way, each such group could then also be additionally wrapped (as needed) in something like single-thing wrappers you've proposed.
Received on Monday, 1 December 2014 21:32:14 UTC