Talk:Comparison of layout engines (Document Object Model)

From Wikipedia, the free encyclopedia
Jump to: navigation, search

JavaScriptCore or WebCore[edit]

Shouldn't JavaScriptCore be listed instead of WebCore? IIRC, WebKit contains WebCore and JavaScriptCore, the later being used for javascript stuff like DOM.

DOM is not a subset of JavaScript. They are two different things. --minghong 03:22, 9 August 2005 (UTC)

Bugs in Trident (resolved)[edit]

According to this table Trident supports getAttribute(), but in my experience it does not. Even though it says it do. The following will fail:

if ( elem.getAttribute ) {
    // Trident says "yes"
    foo = elem.getAttribute('bar')
    alert(foo) // Null on MSIE, works with Gecko and Presto

--itpastorn 10:24, 10 July 2005 (UTC)

IE's getAttribute returns the corresponding DOM object instead of the string value of the attribute.

For example, given <div onclick="foo()"> and node is a reference to the div element:

node.getAttribute('onclick') is equivalent to node.onclick, which is:

function anonymous() {

It should have returned the string "foo()".

Another example: node.getAttribute('style') should return the style attribute in string form, but instead returns the style object.

The same thing applies to setAttribute.

-- 07:40, 14 July 2005 (UTC)

No one else has had anything to say in this matter and user took upon himself to edit the article. I have corrected the bg-color and with this it seems that this case is closed. Special thanks to

--itpastorn 10:17, 3 August 2005 (UTC)


Wow, this thing is massive! I don't know wikipedia guidelines for table stuff, but I think it'd be smaller if the table didn't redefine backgrounds, etc. for every element. It also (at least in firefox) is very inconsistent with the border lines... IMacWin95 19:44, 29 June 2006 (UTC)

I agree. It seems that's why there are templates for other articles of this series. The inconsistencies in Firefox are due to inconsistencies what Browsers do with 'gray' (or 'grey'?) instead of rgb hex values, imho. That could be solved if we set border="0" on the tables or use hex values. Problem is: If hex, which one? I think the CSS article looks great in this respect (it doesn't use templates, though), we should copy the style (so no border). Grey 22:15, 29 June 2006 (UTC)
Applied templates to the tables, got the size down by around 100K. The article could still definitely benefit from being split into sections on separate pages, though. RainbowCrane 19:20, 2 August 2006 (UTC)

I understand some people balking at the length of this article, but some topics are long and detailed and I think it is better to keep them unified, rather than split up due to general concerns about download speeds, attention spans etc. I salute those who provide this extraordinary level of detail in articles such as this, and the one on the comparison of web browsers. I don't understand why someone would want to delete this article. Robin Whittle 23:49, 1 November 2006 (UTC)


As you may have noticed, I changed the look of this page. This has the simple reason that some FF user changed the look of the divider lines without changing the look of the general table borders. As noted above in "Size" I suggested to remove the border and that's what I did now (I left all additional styling information in place, though, for easy revertion), because IE/FF/Opera all seem to have different opinions of what "gray" is exactly. I've also added missing divider lines for the other sections (before this, only the "Core (Fundamental)" section had those). I hope the style is decent for all. Well, all except IE users, at least. They don't seem to be able to see the divider lines at all. I have nothing to do with that though: I merely copied the way the other lines were done and changed the look.Grey 23:32, 5 August 2006 (UTC)

Now, let me ask a question: Is there something wrong with my eyes, or is "No" suddenly yellowish instead of red in all articles of the series? I haven't found anything to cause this, so please explain it to me if you can. This isn't browser-related, though, as it shows up the same in IE, FF and Opera and has shown in the past. Weird. Grey 23:32, 5 August 2006 (UTC)

Interface HTMLScriptElement -> text -> Presto -> Incorrect[edit]

Can someone check if it is still "Incorrect" with latest version of Presto (Opera)?

Yes it is. Even tested with 9.10 (build 8629). Not speaking of the usefulness (this behaviour definitely is useful) it is still not per standard. There is an easy workaround though... just use --Grey 04:22, 2 November 2006 (UTC)

Don't Rv My Edits[edit]

This is a gigantic article, so it's going to take me a long to time to clean it up, feel free too help me out, but don't rv my edits, I can't do everything in one eay........100110100 04:08, 13 November 2006 (UTC)

Error in Interface Attr -> specified[edit]

Gecko does not treat this property per spec. See Mozilla bug 199959. --liorean 07:32, 20 January 2007 (UTC)

Since the bug report is a source, we could change that to "incorrect" and reference the bug report in a footnote, if I am not mistaken. It also says that IE is incorrect, too and that Safari supports this. You can go ahead and do it yourself, or I'll do it for you if it doesn't get done in a few days. --Grey 23:15, 20 January 2007 (UTC)

DOM CSS properties missing[edit]

I just saw that CSS2Properties is pointed to the comparison page for CSS. However, that page doesn't really address the DOM part of it such as that IE uses .styleFloat instead of .cssFloat. --liorean 00:27, 17 April 2007 (UTC)

IE DOES NOT support DOM 1[edit]

While working on a script, I got an error with IE's handling of the HTMLSelectElement's add() method. After looking through this table, I saw other instances where IE did not support DOM 1 attributes, yet it is listed at the top as supporting DOM 1. Please fix this omission. 02:33, 26 April 2007 (UTC)

Fact checking needed for my Webcore additions[edit]

I added a bunch of data from but I'm not sure if that is data from the latest trunk (I suspect that it is) or if it is from the latest release. Also there is no way to tell based on that what version the features were implemented in. Also I put Yes if the method or property exists in the interface class but that doesn't guarantee that it works.

I also did rowspan instead of individual {{no}} templates if the interface didn't exist at all

I tried figuring it out from the source code of the release versions but that was just way too much work.

-- Gudeldar 17:45, 6 August 2007 (UTC)

Trident and the "no" answers[edit]

I'm asking here first before I change this. However, since I've noticed that Gecko's inconsistencies can be footnoted for bug reports, why can't Trident's "different namings" be documented as well? A couple of examples for "no" where "incorrect" is probably more appropriate:

Interface StyleSheet => DOM2 => ownerNode, Trident's implementation: [1] Trident also, incorrectly, supports Interface CSSStyleSheet [2]

This one is just plain wrong however. Trident does indeed support Interface styleSheetList and returns Interface styleSheet which can be access via Interface DocumentStyle (or document.styleSheets[key] )just like Moz/Gecko. Interface StyleSheet => DOM2 => styleSheets, Trident's implementation: [3]

I came across this when I was developing a dynamic stylesheet wrapper and found this page as a decent source. However, I continue to be forced to reference MSDN for Trident's different naming structure because it simply says "no" here. So is this an "ok" to edit and display correctly?

--MAKevin (talk) 18:29, 27 November 2007 (UTC)

Feel free to correct any inconsistencies you might notice. I'm also in favor of documenting the incorrect implementations with footnotes. Which of the {{no}} or {{partial}} template is used is not important I think.--Fenring (talk) 19:06, 27 November 2007 (UTC)
It seems like we're currently missing an explanation of what "incorrect" etc. mean. On this page, a property can only be marked as "yes, partial or incorrect" if it is principally supported by the engine (i.e. non-undefined and in case of a method, callable). If the naming is different then it can only be marked as a "no" but footnotes with alternatives are more than welcome. If you find any such properties for Gecko (or any other engine), feel free to change them to "no" as well, though I cannot see any such case at the moment. --Grey (talk) 13:44, 28 November 2007 (UTC)

querySelector and querySelectorAll[edit]

querySelector and querySelectorAll will be in Fx 3.1 (Buglink), could someone who knows the syntax for this article add the relevant information? --Execvator (talk) 10:12, 26 July 2008 (UTC)

Sorry but the Selectors API is still in Working Draft stage. Editors of this article have tried only to list specs that havbe at some point in time reached at least CR stage. I wouldn't add this. --Grey (talk) 05:07, 4 August 2008 (UTC)
I understand. Just one question, if I may. Doesn't "Last Call Ends 6 January 2008" mean that no large changes are to be made after 06/01, like I though it does? --Execvator (talk) 12:21, 4 August 2008 (UTC)

General overview[edit]

The meaning of the values Major and Minor in this table is unclear. Does Major mean the major functionality is implemented, or does it mean that there are major problems? Without this being clarified, a reader needs to refer to the detailed table below and therefore the summary table serves no purpose. -- Bathroom bob (talk) 12:05, 18 December 2009 (UTC)
I just fixed this by changing:
--Gyrobo (talk) 01:32, 12 February 2010 (UTC)

Removed iCab[edit]

There was previously some talk about removing iCab and Tasman from the comparison pages for the following reasons:

  1. These engines are no longer being developed.
  2. These engines have no market share.
  3. These engines run only on antiquated operating systems, making independent verification difficult.
  4. Keeping these engines in the comparison pages clutters said pages.

I have chosen to leave Tasman intact in this page (because almost all data exists for that engine, and because it may in fact still be developed as part of Microsoft Office 2008 for Mac), but I have removed iCab because it had no data entered. --Gyrobo (talk) 22:25, 12 February 2010 (UTC)

Add/remove engines discussion[edit]

There is a discussion going on at Talk:Comparison of layout engines (Cascading Style Sheets)#Adding new engines regarding which engines should be added to/removed from the comparison pages. Requesting the participation of any interested parties. --Gyrobo (talk) 02:24, 18 February 2010 (UTC)

DOM Event Support Comparison[edit]

Shouldn't there be a browser comparison of DOM event support in a section on this page or on a separate page? Like there are with HTML5 support, etc.> It could be helpful since some browser support some events and some do not. Case in point Firefox recently added support for the readystatechange event - on this page it is listed as a "Microsoft-specific event" even though it is no longer exclusive to Microsoft.

Does anyone else agree or disagree with this? I think it would make a nice addition.

Ryan Jones (talk) 09:17, 27 June 2010 (UTC)

Would it belong in Comparison of layout engines (Document Object Model)#Events or DOM events?
--Gyrobo (talk) 15:09, 27 June 2010 (UTC)
I'm not really sure. I'm not sure there are enough to warrant a page of their own. Though it would certainly need its own section. You guys are the experts - I just thought I'd make a suggestion. Ryan Jones (talk) 15:19, 27 June 2010 (UTC)

Out of Date[edit]

Doing a quick glance at the IE testing center shows that quite a bit of the information on this page is out of date. Trident has made large strides since this article was last updated, as has webkit, and Gecko. These changes should be reflected in the article (talk) 14:54, 9 April 2012 (UTC)

Move discussion in progress[edit]

There is a move discussion in progress on Talk:Comparison of web browser engines which affects this page. Please participate on that page and not in this talk page section. Thank you. —RMCD bot 15:45, 7 September 2012 (UTC)

Trident versions vs IE versions[edit]

Trident is the rendering engine in Internet Explorer and was released up to Version 7.0 in IE 11, something that is correctly echoed in a section in this article. Therefore, Trident 8.0 and 9.0 does not exist. Yet, in these tables, the "Trident" column lists these versions. What do these mean? IE 8 and 9? In that case, is the numbers 7.0 or lower reliable Trident versions, or do these correspond to IE versions as well? I think the tables should really straighten these questions out as right now the information is unreliable and thus useless to me, and what's worse is that I don't know how to fix it since I don't know what they are supposed to mean. I would recommend changing the columns to represent "Trident/EdgeHTML". There would be never be a conflict since EdgeHTML is using version numbers higher than Trident's per design. So e.g. "5.0" would mean "IE 9" and "13.0" would mean "Microsoft Edge Windows 10 November Update". — Northgrove 11:48, 23 August 2016 (UTC)