Safari rendering bugs in <table> ?

  • Follow


Safari 1.2 appears to have rendering bugs with <table> directives that
use the "groups" rule.  See below for a specific case but in general the
problem is that Safari completely ignores <colgroup> and <tbody>.  If the
table itself has a border it always puts a border around every cell, no
matter what.

The html fragment below should appear more or less like this:

|-------------------------|
| COL1 | COL2 COL3 | COL4 |
|-------------------------|
| 1,2  | 1,2  1,3  | 1,4  |
| 2, 1 | 2,2  2,3  | 2,4  |
|-------------------------|
| 3,1  | 3,2  3,3  | 3,4  |
|-------------------------|


Camino and iCab handle this properly.  Safari does not.  Neither does
Omni5, which as I understand it uses the same rendering enging as
Safari.  

Here's the html, which as far as I know is valid (the doctype is
somewhat arbitrary).

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
			"http://www.w3.org/TR/REC-html40/frameset.dtd">
<html> 
<head>
<title>Safari Bug</title>
</head>

<body>

<table border="1"  rules="groups">

  <colgroup>
  <colgroup span="2">
  <colgroup>

  <thead>
  <tr>
    <th><b>COL1</b></th>
    <th><b>COL2</b></th>
    <th><b>COL3</b></th>
    <th><b>COL4</b></th>
  </tr>

  <tbody>
  <tr>
    <td>1,1</td>
    <td>1,2</td>
    <td>1,3</td>
    <td>1,4</td>
  </tr>
  <tr>
    <td>2,1</td>
    <td>2,2</td>
    <td>2,3</td>
    <td>2,4</td>
  </tr>
  
  <tbody>
  <tr>
    <td>3,1</td>
    <td>3,2</td>
    <td>3,3</td>
    <td>3,4</td>
  </tr>
  
</table>

</body>
</html>


0
Reply respower (51) 11/4/2004 3:27:52 PM

In article <2uv03oF2ac9goU1@uni-berlin.de>,
 respower <respower@studiors.org> wrote:

> Safari 1.2 appears to have rendering bugs with <table> directives that
> use the "groups" rule.  See below for a specific case but in general the
> problem is that Safari completely ignores <colgroup> and <tbody>.  If the
> table itself has a border it always puts a border around every cell, no
> matter what.
> 
> The html fragment below should appear more or less like this:
> 
> |-------------------------|
> | COL1 | COL2 COL3 | COL4 |
> |-------------------------|
> | 1,2  | 1,2  1,3  | 1,4  |
> | 2, 1 | 2,2  2,3  | 2,4  |
> |-------------------------|
> | 3,1  | 3,2  3,3  | 3,4  |
> |-------------------------|
> 
> 
> Camino and iCab handle this properly.  Safari does not.  Neither does
> Omni5, which as I understand it uses the same rendering enging as
> Safari.  
> 
> Here's the html, which as far as I know is valid (the doctype is
> somewhat arbitrary).
> 
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
> 			"http://www.w3.org/TR/REC-html40/frameset.dtd">
> <html> 
> <head>
> <title>Safari Bug</title>
> </head>
> 
> <body>
> 
> <table border="1"  rules="groups">
> 
>   <colgroup>
>   <colgroup span="2">
>   <colgroup>
> 
>   <thead>
>   <tr>
>     <th><b>COL1</b></th>
>     <th><b>COL2</b></th>
>     <th><b>COL3</b></th>
>     <th><b>COL4</b></th>
>   </tr>
> 
>   <tbody>
>   <tr>
>     <td>1,1</td>
>     <td>1,2</td>
>     <td>1,3</td>
>     <td>1,4</td>
>   </tr>
>   <tr>
>     <td>2,1</td>
>     <td>2,2</td>
>     <td>2,3</td>
>     <td>2,4</td>
>   </tr>
>   
>   <tbody>
>   <tr>
>     <td>3,1</td>
>     <td>3,2</td>
>     <td>3,3</td>
>     <td>3,4</td>
>   </tr>
>   
> </table>
> 
> </body>
> </html>

And you're posting this to the group because...

Honestly, Apple employees don't typically wander around this group.  You 
should send this problem directly to Steve Jobs.  He'll take care of it 
right away.

-- 
DeeDee, don't press that button!  DeeDee!  NO!  Dee...



0
Reply Michael 11/4/2004 4:18:30 PM


In article <2uv03oF2ac9goU1@uni-berlin.de>,
 respower <respower@studiors.org> wrote:

> Safari 1.2 appears to have rendering bugs with <table> directives that
> use the "groups" rule.  See below for a specific case but in general the
> problem is that Safari completely ignores <colgroup> and <tbody>.  If the
> table itself has a border it always puts a border around every cell, no
> matter what.

Well, don't tell us about it, tell someone who could actually do 
something about it.  Safari's got a "report bugs" feature built right 
into it.

-- 
Tom "Tom" Harrington
Macaroni, Automated System Maintenance for Mac OS X.
Version 2.0:  Delocalize, Repair Permissions, lots more.
See http://www.atomicbird.com/
0
Reply Tom 11/4/2004 4:29:04 PM

In article <2uv03oF2ac9goU1@uni-berlin.de>, respower
<respower@studiors.org> wrote:

<clip>

> Here's the html, which as far as I know is valid (the doctype is
> somewhat arbitrary).

<clip>

Per BBEdit:

Line 8:  Document type does not permit element �<body>� in content of
element �<html>�.
Line 13:  Element �<colgroup>� implicitly closed here.
Line 14:  Element �<colgroup>� implicitly closed here.
Line 16:  Element �<colgroup>� implicitly closed here.
Line 24:  Element �<thead>� implicitly closed here.
Line 38:  Element �<tbody>� implicitly closed here.
Line 46:  Element �<tbody>� implicitly closed here.
0
Reply Chris 11/4/2004 4:38:03 PM

On 04/11/2004 10:27 AM, respower wrote:
> Safari 1.2 appears to have rendering bugs with <table> directives that
> use the "groups" rule.  See below for a specific case but in general the
> problem is that Safari completely ignores <colgroup> and <tbody>.  If the
> table itself has a border it always puts a border around every cell, no
> matter what.
> 
> The html fragment below should appear more or less like this:
> 
> |-------------------------|
> | COL1 | COL2 COL3 | COL4 |
> |-------------------------|
> | 1,2  | 1,2  1,3  | 1,4  |
> | 2, 1 | 2,2  2,3  | 2,4  |
> |-------------------------|
> | 3,1  | 3,2  3,3  | 3,4  |
> |-------------------------|
> 
> 
> Camino and iCab handle this properly.  Safari does not.  Neither does
> Omni5, which as I understand it uses the same rendering enging as
> Safari.  
> 
> Here's the html, which as far as I know is valid (the doctype is
> somewhat arbitrary).
> 
No, this code does not validate.  Check it again.
0
Reply clvrmnky 11/4/2004 5:48:30 PM

On 2004-11-04, Chris Moore <reply_to@newsgroup.INVALID> wrote:
> In article <2uv03oF2ac9goU1@uni-berlin.de>, respower
><respower@studiors.org> wrote:
>
><clip>
>
>> Here's the html, which as far as I know is valid (the doctype is
>> somewhat arbitrary).
>
><clip>
>
> Per BBEdit:
>
> Line 8:  Document type does not permit element �<body>� in content of
> element �<html>�.

Framesets don't have bodies, which is presumably BBEdit is complaining.
Browsers don't really care about this though.  So in and of itself, this
is not the source of the problem.  If it were Safari wouldn't display
anything at all.  Every browser I tried displays something more or less
plausible.  It's the details that are sometimes wrong.  Feel free to
plug in any doctype you like, my guess is you'll see exactly the same
behavior.  If not, and in particular if you find a doctype that causes
Safari to display this example properly, please post!  That would be
very useful information.

Fwiw I also tried:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
			"http://www.w3.org/TR/REC-html40/loose.dtd">





> Line 13:  Element �<colgroup>� implicitly closed here.
> Line 14:  Element �<colgroup>� implicitly closed here.
> Line 16:  Element �<colgroup>� implicitly closed here.
> Line 24:  Element �<thead>� implicitly closed here.
> Line 38:  Element �<tbody>� implicitly closed here.
> Line 46:  Element �<tbody>� implicitly closed here.

The close tags for these are defined to be optional.  These are just
warnings.


So practically speaking nothing's really wrong with the html.  But I
appreciate the response. 


Possibly, although it doesn't seem at all likely, this is a true Safari
bug that's never been reported before.  If this is so, I'll report to
Apple.  But I'd be amazed if that were the case.  More likely, I'm
misunderstanding something, or some very specific doc-type would work.
That's why I'm posting.  Only a fool would instantly report this as a
bug without asking around a little first.

Btw the terminal browser 'links' gets it exactly right.  Here's its
output, which is better than my handdrawn ascii version:

   +--------------------------+                                                 
   | COL1 | COL2  COL3 | COL4 |                                                 
   |------+------------+------|                                                 
   | 1,1  | 1,2   1,3  | 1,4  |                                                 
   | 2,1  | 2,2   2,3  | 2,4  |                                                 
   |------+------------+------|                                                 
   | 3,1  | 3,2   3,3  | 3,4  |                                                 
   +--------------------------+                                                 


0
Reply respower 11/4/2004 5:50:20 PM

On 2004-11-04, clvrmnky <clvrmnky-uunet@coldmail.com.invalid> wrote:
> No, this code does not validate.  Check it again.

That's just the doctype dtd reference, which every browser I know will
happily ignore.  That's why I said in the original post that the doctype
was chosen arbitrarily.  Pick any standard html doctype you like or even
omit a doctype altogether, I think you'll see the same behavior.  If you
don't, let me know.
0
Reply respower 11/4/2004 8:15:36 PM

In article <2uvgv8F2f766cU1@uni-berlin.de>,
 respower <respower@studiors.org> wrote:

> On 2004-11-04, clvrmnky <clvrmnky-uunet@coldmail.com.invalid> wrote:
> > No, this code does not validate.  Check it again.
> 
> That's just the doctype dtd reference, which every browser I know will
> happily ignore.  That's why I said in the original post that the doctype
> was chosen arbitrarily.  Pick any standard html doctype you like or even
> omit a doctype altogether, I think you'll see the same behavior.  If you
> don't, let me know.

It's interesting that the W3C designed application "Amaya 8.6" shows the 
same problem.

-- 
Tom Stiller

PGP fingerprint =  5108 DDB2 9761 EDE5 E7E3 
                   7BDA 71ED 6496 99C0 C7CF
0
Reply Tom 11/4/2004 9:11:28 PM

On 2004-11-04, Tom Stiller <tomstiller@comcast.net> wrote:
> It's interesting that the W3C designed application "Amaya 8.6" shows the 
> same problem.

So the only browsers that are known to handle this properly are the
gecko-based ones (at least Camino and Firefox), iCab and links?  Is this
feature of html just too new?  I thought it had been around for some
time and could safely be assumed to be supported in current browsers.
That's the reason I was so surprised that Safari didn't handle it.
0
Reply respower 11/4/2004 9:32:30 PM

In article <2uvgv8F2f766cU1@uni-berlin.de>,
 respower <respower@studiors.org> wrote:

> On 2004-11-04, clvrmnky <clvrmnky-uunet@coldmail.com.invalid> wrote:
> > No, this code does not validate.  Check it again.
> 
> That's just the doctype dtd reference, which every browser I know will
> happily ignore.  That's why I said in the original post that the doctype
> was chosen arbitrarily.  Pick any standard html doctype you like or even
> omit a doctype altogether, I think you'll see the same behavior.  If you
> don't, let me know.

Try upgrading Safari. It renders fine for me.
0
Reply Shawn 11/6/2004 3:10:36 AM

On 2004-11-06, Shawn Hearn <srhi@comcast.net> wrote:
> Try upgrading Safari. It renders fine for me.

You mean 1.2.4 (v125.11), from 10.3.6? I just tried it, it looks exactly
the same as before: the renderer still pays no attention to the cell
groupings. Unless my update was somehow incomplete it didn't fix this
problem.

0
Reply respower 11/6/2004 3:30:31 AM

In article <2uvlfeF2e72cjU1@uni-berlin.de>,
 respower <respower@studiors.org> wrote:

> On 2004-11-04, Tom Stiller <tomstiller@comcast.net> wrote:
> > It's interesting that the W3C designed application "Amaya 8.6" shows the 
> > same problem.
> 
> So the only browsers that are known to handle this properly are the
> gecko-based ones (at least Camino and Firefox), iCab and links?  Is this
> feature of html just too new?

It's part of HTML 4, which is from april 1998... I don't know about you, 
but to me that doesn't count as "new by a long shot. Unfortunately 
browser vendors are wasting an enormous amount of resources on getting 
their code to make sense out of all the crappy HTML/CSS/javascript out 
there. If Web publishers would bother to learn their job Web browsers 
might evolve again.

> I thought it had been around for some
> time and could safely be assumed to be supported in current browsers.

Hell no. No browser I know of supports all of HTML 4. Even iCab doesn't 
support everything. <COL align="char" char=","> for instance. Then 
again, no browser does AFAIK...

-- 
Sander Tekelenburg, <http://www.euronet.nl/~tekelenb/>

Mac user: "Macs only have 40 viruses, tops!"
PC user: "SEE! Not even the virus writers support Macs!"
0
Reply Sander 11/6/2004 3:40:32 AM

On 2004-11-06, Sander Tekelenburg <user@domain.invalid> wrote:
> It's part of HTML 4, which is from april 1998... I don't know about you, 
> but to me that doesn't count as "new by a long shot.

I don't think so either.  That's why I was surprised at the non-support,
and even more surprised that this has apparently never come up before in
the Mac newsgroups (according to Google). 


>> I thought it had been around for some
>> time and could safely be assumed to be supported in current browsers.
>
> Hell no. No browser I know of supports all of HTML 4.

True but <table>s with groupings are pretty widely used -- this is not
exactly an obscure feature of html 4.  Even 'links' supports it.

Btw, some pointless fuss was made earlier over the fact that my original
sample as posted here happened to include the wrong doctype.  Browsers
don't generally care about the doctype, certainly not in this case.  As
I suggested earlier, the 4.0 transitional type would have been the more
appropriate one to use, and indeed validator.w3.org validates the file
with that type.  Safari, and every other browser I'm familiar with, does
exactly the same thing as it did with the other type.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">


<title>Safari Bug</title>
</head>

<body>

<table border="1"  rules="groups">

  <colgroup>
  <colgroup span="2">
  <colgroup>

  <thead>
  <tr>
    <th><b>COL1</b></th>
    <th><b>COL2</b></th>
    <th><b>COL3</b></th>
    <th><b>COL4</b></th>
  </tr>

  <tbody>
  <tr>
    <td>1,1</td>
    <td>1,2</td>
    <td>1,3</td>
    <td>1,4</td>
  </tr>
  <tr>
    <td>2,1</td>
    <td>2,2</td>
    <td>2,3</td>
    <td>2,4</td>
  </tr>
  
  <tbody>
  <tr>
    <td>3,1</td>
    <td>3,2</td>
    <td>3,3</td>
    <td>3,4</td>
  </tr>
  
</table>


</body>
</html>

0
Reply respower 11/6/2004 1:46:24 PM

In article <2v42tgF2fmqiiU1@uni-berlin.de>,
 respower <respower@studiors.org> wrote:

> On 2004-11-06, Sander Tekelenburg <user@domain.invalid> wrote:
> > It's part of HTML 4, which is from april 1998... I don't know about you, 
> > but to me that doesn't count as "new by a long shot.
> 
> I don't think so either.  That's why I was surprised at the non-support,
> and even more surprised that this has apparently never come up before in
> the Mac newsgroups (according to Google). 

Well, this group might not be that relevant to this issue, so those 
search results may not mean much. Groups like 
<news:comp.infosystems.www.authoring.html>, 
<news:comp.infosystems.www.browsers.misc> or  
<news:comp.infosystems.www.browsers.mac> are probably more relevant.

-- 
Sander Tekelenburg, <http://www.euronet.nl/~tekelenb/>

Mac user: "Macs only have 40 viruses, tops!"
PC user: "SEE! Not even the virus writers support Macs!"
0
Reply Sander 11/7/2004 12:24:44 AM

13 Replies
31 Views

(page loaded in 0.166 seconds)


Reply: