Closed Bug 396705 Opened 18 years ago Closed 17 years ago

Table row does not honor inline (anonymous table objects created)

Categories

(Core :: Layout: Tables, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: mosimons, Unassigned)

Details

Attachments

(1 file, 1 obsolete file)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7 Build Identifier: 2.0.0.7 (Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7) If i set one specific table row to "inline", it doesn't render correctly. There are possibly two different bugs: 1. The row is no longer a row, but a cell. 2. An extra empty row is added to the table. btw: opera has problem nr 1 as well, while IE7 works fine. Reproducible: Always Steps to Reproduce: 1.Run the attached html-file 2.Click on hide/show and have a look
In this example I've removed the <body onload=hide()> so that you'll see the correct table before you click on hide/show-links. Not a big issue, I just wanted to make this perfectly clear.
Attachment #281468 - Attachment is obsolete: true
I have tested some more on my example, and I think I know what causes this bug. The point is that I have 3 id's which starts with the same string "Tore". If I change the ids to all be completely different, then the situation improves. However, the problem with the extra empty row is still there. But I need to have rows which starts with the same id. This functionality is vital for me to build a tree-structured explode/collapse view on a table. In such a table, many table rows will start with the same id.
Could you test your bug on the latest trunk version (Minefield)? These are test versions for the coming Firefox 3. http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/
I'd guess that IE7 is probably broken, since it doesn't support the table display types at all, I don't think. Note that anonymous table objects are created to fill in for any missing parts per the rules in the tables chapter of CSS2.1.
I tested the bug with Minefield. Bug nr 1 is fixed (no extra empty row is added). Bug nr 2 is NOT fixed (the row is converted to a cell).
Ok, I admit I'm a bit disappointed. Nothing is happening here, and too me this looks like an easy fix. My problem is that I need this functionality in order to make a business product. Therefore, I would be very glad if someone could at very least give me a) a hint to whether this is going to be done at all b) if it is, then will it be in 2008, next 6 months, or? Sorry to nagging, it's just that it is important.
I believe this is the same bug that I have found but in a slightly different context. I was trying to display a table row that had been styled "display:none". When I use javascript to change the display to "block" (or "inline"), the resulting row doesn't display correctly. One aspect of the problem is that the first column does not appear to pay any attention to the COL definition for that column. Here's an easily reproducable script: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script language="JavaScript"> function show() { document.getElementById("hiderow").style.display = "block" } </script> </head> <body> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=1> <COL WIDTH=300 ALIGN=TOP><COL WIDTH=200> <TR><TD>ROW 1 COLUMN 1<TD>ROW 1 COLUMN 2</TR> <TR id=hiderow style='display:none'><TD>ROW 2 COLUMN 1<TD>ROW 2 COLUMN 2<BR><span></span> </TABLE> <BUTTON type=button ONCLICK='show();'>CLICK HERE</BUTTON> </body> </html>
PS (to the above). IE 5-6 performs as expected (row conforms to format that would be displayed if there was no change of 'display').
So per comment 5, our behavior is correct. Marking bug invalid. If you want to set the display of table rows back to the default, you should use display:table-row, not display:inline. (IE doesn't support the table display types, but hard-codes them instead.) We're just doing what you ask. If you want something that works cross-browser, set element.style.display to "" to restore the default.
Status: UNCONFIRMED → RESOLVED
Closed: 17 years ago
Resolution: --- → INVALID
Summary: Table row does not honor inline. → Table row does not honor inline (anonymous table objects created)
Hi there. I didn't get the #5 comment, but after #10 comment I understood! The cross-browser trick worked perfect (at least in those few browsers I tested). Now, we are very pleased. Sorry to bother you all with something that was caused by Microsofts violation of standards. Thanks.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: