Re: Body-indent

> >Perhaps I've missed a previous post, or perhaps
> >is an obvious way of doing this but it seems that
> >body-indent: (opp. text-indent - i.e., all but the
> >first line) is an obvious property.
> You may have missed some threads in ciwas as well as
some basic
> understanding of even the CSS1 specs.
>   P:first-line { padding-left: 0; }
>   P { margin: 0; border: none; padding-left: 5em; }
> Might be an example if I have understood your
question correctly.

>That won't work for two reasons:

> * If they were, you'd want a -5em padding-left.

You might want a -5em padding-left, but you are not
allowed one (see the spec - padding cannot be

> > >There are methods for creating hanging indents
> > using positive left
> > >margin and negative text-indent.
> > 
> > There are simple reasons as to why you would not
> > want to use the margin
> > property for this...

I wrote:
> Not to mention the fact that it sets up a block for
> the element that is of the wrong size. (Imagine the
> havoc that such a method would cause in columns (the
> text-indent would overlap the previous column).

But I was wrong.

I realised as soon as I wrote this that this is not
the case.

However, there are other reasons why this is a _BAD_

1. Subsequent elements would misapprehend the size of
the containing block. This is a serious problem for
the use of % or for positioning.

2. Margin is transparent, but content is not.

E.g., BODY {background: red}
P {margin-left: 2em;
text-indent: -2em;
background: green}

The margin would be red, except the line box
containing the negative t-indent would be green.

Thus it is clear that body-indent cannot be simulated
by any other means.

PS. Perhaps this is why css should be extended - many
of the supposedly untapped methods in css 1 are
actually bad ideas.

From Matthew Brealey ( (for law)or (for CSS))
Do You Yahoo!?
Bid and sell for free at

Received on Friday, 5 November 1999 08:59:26 UTC