- From: fantasai <fantasai@escape.com>
- Date: Mon, 26 Feb 2001 21:41:22 -0500
- To: www-style@w3.org
Bert Bos wrote:
>
> Ian Hickson writes:
> >
> > This group has a long history of shooting down proposed CSS rules for
> > styling the default look of <br> elements, so I figured here would be the
> > best place to ask:
> >
> > What is wrong with the following?
> >
> > br {
> > display: block;
> > }
> >
> > br:before {
> > content: "\A";
> > white-space: pre; /* in case white-space applies to :before */
> > }
> >
> > br[clear=left] {
> > clear: left;
> > }
> >
> > br[clear=right] {
> > clear: right;
> > }
> >
> > br[clear=all] {
> > clear: both;
> > }
> >
> > (Other than the minor issue that for backwards compatability, the both
> > value for clear should actually clear the _bottom_ of the <br> and not the
> > top, like the rules above do.)
>
> You will get an empty line too many.
>
> The main problem of BR is that the first BR just starts a new line,
> without adding any vertical whitespace, but the second and subsequent
> ones create whitespace.
>
> Setting the content of BR to "\A" (while keeping BR inline) will model
> that accurately, but doesn't allow for 'clear' to apply.
>
> So how about:
>
> br {content: "\A"; display: inline}
>
> br[clear] {content: ""; display: block}
> br[clear=left] {clear: left}
> br[clear=right] {clear: right}
> br[clear=all] {clear: both}
br, br[clear=none] {content: "\A"; display: inline} /*after br[clear]*/
Would the following markup present a problem, or do you want to
ignore the possibility?
<p>content<br>
<br clear="all">
<br clear="all">
<br clear="all">
end</p>
Received on Monday, 26 February 2001 21:40:28 UTC