By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,702 Members | 1,760 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,702 IT Pros & Developers. It's quick & easy.

DIVs inside table cells?

P: n/a
Is it possibel to have DIV's inside a table cell so that their position can be
given relative to top left corner of the cell. Now the DIVs seem to position
themselves relative to previous object.
Jun 27 '08 #1
Share this Question
Share on Google+
5 Replies


P: n/a
Test wrote:
Is it possibel to have DIV's inside a table cell so that their position can be
given relative to top left corner of the cell.
Yes.
Now the DIVs seem to position
themselves relative to previous object.
Without seeing your page it isn't possible for anyone to know what you
should expect to see or what you need to do to change it.

If the position of the cell is specified "relative" then a DIV inside it
with position: absolute should be positioned relative to the cell's
origin, and IE 7 does this, but on the other hand if the cell is styled
with a border, the border disappears. Firefox, in contrast, positions
the DIV relative to the viewport origin (assuming there are no
containing blocks between the viewport and the cell; I didn't test any
other case).

If you nest the DIV inside another, relative positioned DIV, inside the
cell, which now doesn't have to be relative positioned, then the
positioning works in Firefox.

So I think Firefox has a bug in this respect.
Jun 27 '08 #2

P: n/a
rf
Harlan Messinger <hm*******************@comcast.netwrote in
news:66*************@mid.individual.net:
Test wrote:
>Is it possibel to have DIV's inside a table cell so that their
position can be given relative to top left corner of the cell.

Yes.
>Now the DIVs seem to position
themselves relative to previous object.

Without seeing your page it isn't possible for anyone to know what you
should expect to see or what you need to do to change it.

If the position of the cell is specified "relative" then a DIV inside
it with position: absolute should be positioned relative to the cell's
origin, and IE 7 does this, but on the other hand if the cell is
styled with a border, the border disappears. Firefox, in contrast,
positions the DIV relative to the viewport origin (assuming there are
no containing blocks between the viewport and the cell; I didn't test
any other case).

If you nest the DIV inside another, relative positioned DIV, inside
the cell, which now doesn't have to be relative positioned, then the
positioning works in Firefox.

So I think Firefox has a bug in this respect.
http://www.w3.org/TR/CSS21/visuren.h...opdef-position

"The effect of 'position: relative on ... table-cell ... is undefined."
All browsers are behaving correctly. If the effect is undefined they are
free to do whatever they want.
--
Richard
Killing all threads involving google groups
The Usenet Improvement Project: http://improve-usenet.org
Jun 27 '08 #3

P: n/a
rf wrote:
Harlan Messinger <hm*******************@comcast.netwrote in
news:66*************@mid.individual.net:
>Test wrote:
>>Is it possibel to have DIV's inside a table cell so that their
position can be given relative to top left corner of the cell.
Yes.
>>Now the DIVs seem to position
themselves relative to previous object.
Without seeing your page it isn't possible for anyone to know what you
should expect to see or what you need to do to change it.

If the position of the cell is specified "relative" then a DIV inside
it with position: absolute should be positioned relative to the cell's
origin, and IE 7 does this, but on the other hand if the cell is
styled with a border, the border disappears. Firefox, in contrast,
positions the DIV relative to the viewport origin (assuming there are
no containing blocks between the viewport and the cell; I didn't test
any other case).

If you nest the DIV inside another, relative positioned DIV, inside
the cell, which now doesn't have to be relative positioned, then the
positioning works in Firefox.

So I think Firefox has a bug in this respect.

http://www.w3.org/TR/CSS21/visuren.h...opdef-position

"The effect of 'position: relative on ... table-cell ... is undefined."
All browsers are behaving correctly. If the effect is undefined they are
free to do whatever they want.
Ah, OK, thanks. I was concentrating on the section on absolute
positioning and didn't bother to read the section on relative positioning.
Jun 27 '08 #4

P: n/a
On 2008-04-14, Harlan Messinger <hm*******************@comcast.netwrote:
rf wrote:
>Harlan Messinger <hm*******************@comcast.netwrote in
news:66*************@mid.individual.net:
>>Test wrote:
Is it possibel to have DIV's inside a table cell so that their
position can be given relative to top left corner of the cell.
Yes.

Now the DIVs seem to position
themselves relative to previous object.
Without seeing your page it isn't possible for anyone to know what you
should expect to see or what you need to do to change it.

If the position of the cell is specified "relative" then a DIV inside
it with position: absolute should be positioned relative to the cell's
origin, and IE 7 does this, but on the other hand if the cell is
styled with a border, the border disappears. Firefox, in contrast,
positions the DIV relative to the viewport origin (assuming there are
no containing blocks between the viewport and the cell; I didn't test
any other case).

If you nest the DIV inside another, relative positioned DIV, inside
the cell, which now doesn't have to be relative positioned, then the
positioning works in Firefox.

So I think Firefox has a bug in this respect.

http://www.w3.org/TR/CSS21/visuren.h...opdef-position

"The effect of 'position: relative on ... table-cell ... is undefined."
All browsers are behaving correctly. If the effect is undefined they are
free to do whatever they want.

Ah, OK, thanks. I was concentrating on the section on absolute
positioning and didn't bother to read the section on relative positioning.
rf is right and I almost mentioned that, but I really do think this is a
bit of a loophole. If it was intentional they would have said something
about it in the section on containing block.

All they mean IMO is that it's undefined when you start setting top,
left etc. on relatively positioned table cells.

After all everything else can be a containing block for positioned
descendents, even inline boxes (and that's much madder than
table-cells).
Jun 27 '08 #5

P: n/a
On Apr 13, 4:27 pm, rf <r...@x.invalidwrote:
Harlan Messinger <hmessinger.removet...@comcast.netwrote innews:66*************@mid.individual.net:
Test wrote:
Is it possibel to have DIV's inside a table cell so that their
position can be given relative to top left corner of the cell.
Yes.
Now the DIVs seem to position
themselves relative to previous object.
Without seeing your page it isn't possible for anyone to know what you
should expect to see or what you need to do to change it.
If the position of the cell is specified "relative" then a DIV inside
it with position: absolute should be positioned relative to the cell's
origin, and IE 7 does this, but on the other hand if the cell is
styled with a border, the border disappears. Firefox, in contrast,
positions the DIV relative to the viewport origin (assuming there are
no containing blocks between the viewport and the cell; I didn't test
any other case).
If you nest the DIV inside another, relative positioned DIV, inside
the cell, which now doesn't have to be relative positioned, then the
positioning works in Firefox.
So I think Firefox has a bug in this respect.

http://www.w3.org/TR/CSS21/visuren.h...opdef-position

"The effect of 'position: relative on ... table-cell ... is undefined."
All browsers are behaving correctly. If the effect is undefined they are
free to do whatever they want.

--
Richard
Killing all threads involving google groups
The Usenet Improvement Project:http://improve-usenet.org
Safari, IE, and Opera all locate a "position:absolute referenced
<div>" (located inside a table-cell that is "position:relative")
relative to the cell location.

Only Firefox requires the addition of another position:relative <div>
inside the cell to get the location correct. I view this with contempt.
Jun 27 '08 #6

This discussion thread is closed

Replies have been disabled for this discussion.