Bug 251373 - HTML5: XMTML5 testcases fail
Summary: HTML5: XMTML5 testcases fail
Status: RESOLVED UNMAINTAINED
Alias: None
Product: konqueror
Classification: Applications
Component: khtml (show other bugs)
Version: 4.5.1
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords: testcase
Depends on:
Blocks: 156536
  Show dependency treegraph
 
Reported: 2010-09-15 21:30 UTC by Rolf Eike Beer
Modified: 2024-05-06 18:38 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
testcase (4.52 KB, application/x-zip-compressed)
2010-12-03 14:27 UTC, pasta0915
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rolf Eike Beer 2010-09-15 21:30:54 UTC
Version:           4.5.1 (using KDE 4.5.1) 
OS:                Linux

Microsoft provides testcases for various browser compliance things (see
http://samples.msdn.microsoft.com/ietestcenter/#html5). Some of the XHTML5
tests fails:

#2 Body element with link attribute (text does not get color of visited link after clicking)
#4 Colgroup element with valign attribute set to bottom
#5 Colgroup element with valign attribute set to top
#6 Style inside comments
#7 Image element with border in % (50% testcase fails)
#8 Object element with border in %
#9 Obect element with border in pixels


Reproducible: Always




OS: Linux (i686) release 2.6.34.4-0.1-desktop
Compiler: gcc
Comment 1 pasta0915 2010-12-03 14:27:24 UTC
Created attachment 54035 [details]
testcase

i wrote testcases
Comment 2 Gérard Talbot (no longer involved) 2011-06-27 20:27:53 UTC
>  Some of the XHTML5
> tests fails:
> 
> #2 Body element with link attribute (text does not get color of visited link
> after clicking)

http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/body_link.xhtml

There is no initial, default (user agent style sheet) CSS rule for :visited or a:visited in Konqueror, that is after examining html4.css . So, this may not be a Konqueror bug. The testcase assumes and presumes that the user agent style sheet has and uses an initial, default (user agent style sheet) CSS rule for :visited or a:visited. 

The result of Microsoft test here does not prove a flaw, a failure or an incorrect implementation as far as rendering visited links in a color.

> #4 Colgroup element with valign attribute set to bottom
> #5 Colgroup element with valign attribute set to top

http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/colgroup_valign_bottom.xhtml

http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/colgroup_valign_top.xhtml

valign is a non-CSS presentational hint and a deprecated attribute. 
"The UA *_may_* choose to honor presentational attributes in an HTML source document."
6.4.4 Precedence of non-CSS presentational hints
http://www.w3.org/TR/CSS21/cascade.html#preshint

The thing is valign would normally be mapped to CSS vertical-align property. But, vertical-align does not apply to colgroup elements; it should apply only to table cell elements and inline-level elements. 
http://www.w3.org/TR/CSS21/visudet.html#propdef-vertical-align

So, XHTML5 or not, I'd be surprised if this test pass in HTML 4.01 transitional anyway.

Even Microsoft CSS 2.1 test suite contribution confirms this in 

http://test.csswg.org/suites/css2.1/20110323/html4/vertical-align-applies-to-005.htm

So, there is a contradiction here and there is a leniency provided in section 6.4.4 of CSS 2.1. 

FWIW, Firefox 5.0 fails those 2 Colgroup element with valign attribute tests... and probably would fail those 2 same tests written in HTML 4.01 transitional.


> #6 Style inside comments
> #7 Image element with border in % (50% testcase fails)

http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/img_border_percent.xhtml

border expressed in percentage in CSS code is invalid:
http://test.csswg.org/suites/css2.1/latest/html4/border-width-013.htm

border attribute specified with a percentage value is extremely rare, is very likely to be inconsistently rendered in mainstream browsers, border attribute on image is deprecated.

For all reasons given before (leniency, precedence of non-CSS hints, etc), this barely can be considered a flaw, even a minor flaw, in the border implementation.


> #8 Object element with border in %

http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/object_border_perc.xhtml

Same reasons.

> #9 Obect element with border in pixels

This one has merits: border in pixels on HTML object element should be rendered ... but I can not silenced the fact that the testcase uses this code:

<div  valing="center">

.. which is invalid attribute specification.

regards, Gérard
Comment 3 Gérard Talbot (no longer involved) 2011-06-27 20:57:13 UTC
Regarding border expressed in percentage (%) for <img> and <object> elements, it is not only deprecated but it also assumes pixel unit only in HTML 4 spec!

"
border = pixels [CN]
    Deprecated. This attribute specifies the width of an IMG or OBJECT border, in pixels. The default value for this attribute depends on the user agent. 
"
http://www.w3.org/TR/html4/struct/objects.html#adef-border-IMG

So, I'm quite surprised that it would be considered a valid test for XHTML5.

-----------

The verb modifier "may" has a precise meaning in the spec (HTML4:  http://www.w3.org/TR/html4/conform.html and CSS 2.1: http://www.w3.org/TR/CSS21/conform.html#defs ).

"
5. MAY   This word, or the adjective "OPTIONAL", mean that an item is
   truly optional. (...)
"
http://www.ietf.org/rfc/rfc2119.txt

Basically, "may" means if you support it, fine, ok; basically it means "you do not have to but it's okay if you support it". 

But if you do not support a "may" sentence, do not comply a "may" sentence, the user agent can still achieve a complete, perfect compliance with the spec nonetheless.

-------------

As far as HTML5 specification goes so far:

- border on <img> is allowed but discouraged in favor of CSS
http://dev.w3.org/html5/html4-differences/#changed-attributes

- border on <object> element no longer exists
http://dev.w3.org/html5/html4-differences/#absent-attributes

So even #9 
http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/object_border_pixel.xhtml
is questionable, debattable as a valid test for XHTML5.

- There is no word none whatsoever with regards to rendering and implementing percentage value on border attribute for both of these elements.

HTML5 differences from HTML4
W3C Working Draft 24 May 2011
http://dev.w3.org/html5/html4-differences/

Gérard
Comment 4 Gérard Talbot (no longer involved) 2011-06-27 21:05:37 UTC
<img> element does not have a border attribute in HTML5:
http://www.w3.org/TR/html5/embedded-content-1.html#the-img-element

<object> element does not have a border attribute in HTML5:
http://www.w3.org/TR/html5/the-iframe-element.html#the-object-element

Gérard
Comment 5 Gérard Talbot (no longer involved) 2011-06-27 21:16:39 UTC
No valign attribute for <colgroup> elements in HTML5:
http://www.w3.org/TR/html5/tabular-data.html#the-colgroup-element

My conclusion is that those 10 tests are, at least in part, questionable, debattable; they may serve more the purpose of proving that IE9 and IE10 Platform Preview (1 and later) are better than other browsers than to prove a real and useful compliance with an emerging and in-developement W3C web standard like HTML5.

Overall, public test suites

e.g. HTML5 test suite 
(
http://w3c-test.org/html/tests/harness/harness.htm
http://w3c-test.org/html/tests/harness/approvedtests.txt
)
are much more reliable, preferable, trustworthy, useful, relevant, helpful than a small set of very carefully selected testcases.

regards, Gérard
Comment 6 Gérard Talbot (no longer involved) 2011-06-29 12:04:29 UTC
I just realized today that the tests you were referring to (which have been submitted by Microsoft) have also been approved by W3C!

http://w3c-test.org/html/tests/approved/xhtml5/body_link.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/body_text_00ffff.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/html_style_in_comment.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/img_border_percent.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/object_border_perc.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/object_border_pixel.xhtml

I still think this is wrong... in particular the border percentage ones. The 2 colgroup testcases have not been approved; at least they are not in the 

http://w3c-test.org/html/tests/harness/approvedtests.txt

regards, Gérard
Comment 7 Gérard Talbot (no longer involved) 2011-09-11 22:25:16 UTC
> > #2 Body element with link attribute (text does not get color of visited link
> > after clicking)
> 
> http://samples.msdn.microsoft.com/ietestcenter/html5/xhtml/body_link.xhtml
> 
> There is no initial, default (user agent style sheet) CSS rule for :visited or
> a:visited in Konqueror, that is after examining html4.css . So, this may not be
> a Konqueror bug.

There is a Konqueror bug wrt :visited links:
Bug 24820 : visited links don't change colour until after they are hovered over with the mouse.

Gérard
Comment 8 Gérard Talbot (no longer involved) 2011-09-28 13:25:13 UTC
(In reply to comment #0)

> Microsoft provides testcases for various browser compliance things (see
> http://samples.msdn.microsoft.com/ietestcenter/#html5). Some of the XHTML5
> tests fails:
> 
> #4 Colgroup element with valign attribute set to bottom
> #5 Colgroup element with valign attribute set to top

Rolf Eike Beer,

I hope you are still reading this bug report.

You see, 3 weeks before you filed this bug, those 2 colgroup with valign testcases were rejected (for the reasons I invoked) by W3C HTML group (public-html-testsuite mailing list):

"
colgroup_valign_bottom.xhtml
colgroup_valign_top.xhtml
Rejected. There are no requirements in the specification about
colgroup@valign.
"
http://lists.w3.org/Archives/Public/public-html-testsuite/2010Aug/0011.html
August 24th 2010

but Microsoft never removed those testcases from their IE testcenter website!

Gérard Talbot
Comment 9 Rolf Eike Beer 2011-09-28 13:29:04 UTC
> Rolf Eike Beer,
>
> I hope you are still reading this bug report.

I do.

> You see, 3 weeks before you filed this bug, those 2 colgroup with valign
> testcases were rejected (for the reasons I invoked) by W3C HTML group
> (public-html-testsuite mailing list):

Fine with me if we do not need to care here.
Comment 10 Gérard Talbot (no longer involved) 2011-09-29 18:48:31 UTC
Rolf Eike Beer,

I went over the Public HTML testsuite mailing list and more testcases from that testsuite and there are problems with testcases.

One recent email (dated august 23rd 2011) caught my attention:

http://lists.w3.org/Archives/Public/public-html-testsuite/2011Aug/0015.html 

in which one of the testcase approver says
"
I've asked a fellow Mozilla developer to review the HTML forms tests 
Microsoft recently submitted. [1]  Their comments (which I agree with) 
are below.
(...)
While I appreciate the work Microsoft has spent on these tests, I would 
not approve any of them.
"

---------

Here's my email sent today to such mailing list:

img_border_percent , object_border_perc and object_border_pixel testcases
http://lists.w3.org/Archives/Public/public-html-testsuite/2011Sep/0017.html

---------

I have asked 3 times in IE blog since july 1st 2011 to have the 2 colgroup with valign testcases removed from IE test center. They have not complied so far.

---------

Rolf Eike Beer, one thing is certain in my mind. Konqueror with KHTML rendering engine is lagging behind other browsers in HTML5 compliance and support, especially newer features, advanced stuff. Konqueror and its KHTML rendering engine lacks developers to fix problems, bugs, crashes, hang (serious, severe) bugs.

regards, Gérard
Comment 11 Gérard Talbot (no longer involved) 2011-10-02 00:20:52 UTC
Rolf Eike Beer,

1- What would really help here is if someone could run the HTML5 test harness (924 tests) and then report the results for Konqueror with KHTML rendering engine. 

2- Also, the same should be done for other new W3C spec being developed and with available, accessible test suites or with available, accessible sets of testcases (canvas, media queries, CSS3 modules, DOM3 interface attributes, methods, ECMAScript 5.1 test suite, etc.) This is best, ideal: we then can all know/see how well Konqueror is doing and where exactly it fails.

3- Another thing which would help is to visit this KDE forum thread and to vote accordingly:

Poll/survey: Your opinion about konqueror future
What would you like to happen to Konqueror ?
http://forum.kde.org/viewtopic.php?f=18&t=96876

Right now there is *_no developer_* dedicated (or even partially dedicated) to tackle and fix Konqueror's KHTML rendering engine bugs (spec violations), crashes, hang bugs, various types of problems and  issues. All of the commits to KHTML rendering engine in the last 12 months clearly indicate this.

----------------

I got answers with regards to 

http://w3c-test.org/html/tests/approved/xhtml5/img_border_percent.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/object_border_perc.xhtml
http://w3c-test.org/html/tests/approved/xhtml5/object_border_pixel.xhtml

in

http://lists.w3.org/Archives/Public/public-html-testsuite/2011Sep/0019.html



[1] http://www.whatwg.org/html/#attributes-for-embedded-content-and-images
"
 When an img element, object element, or input element with a type
 attribute in the Image Button state is contained within a hyperlink
 and has a border attribute whose value, when parsed using the _rules
 for parsing non-negative integers_ [2], is found to be a number greater
 than zero, the user agent is expected to use the parsed value for
 eight presentational hints: four setting the parsed value as a pixel
 length for the element's 'border-top-width', 'border-right-width',
 'border-bottom-width', and 'border-left-width' properties, and four
 setting the element's 'border-top-style', 'border-right-style',
 'border-bottom-style', and 'border-left-style' properties to the
 value 'solid'.
"

[2] http://www.whatwg.org/html/#rules-for-parsing-non-negative-integers

So, it seems (I requested a confirmation of such reasoning) that 

<img border="50foo" ...>

or

<img border="50pt" ...>

or

<img border="50%" ...>

or

<object border="50bar" ...>

or

<object border="50rem" ...>

or

<object border="50%" ...>

should all be rendered the same: with a 50px border on each side.

I posted
http://lists.w3.org/Archives/Public/public-html-testsuite/2011Oct/0000.html

regards, Gérard
Comment 12 Christoph Cullmann 2024-05-06 18:38:21 UTC
Dear user,

KHTML (and KJS) was a long time more or less unmaintained and got removed in KF6.

Please migrate to use a QWebEngine based HTML component.

We will do no further fixes or improvements to the KF5 branches of these components beside important security fixes.

For security issues, please see:

https://kde.org/info/security/

Sorry that we did not fix this issue during the life-time of KHTML.

Greetings
Christoph Cullmann