- From: Laurens Holst <lholst@students.cs.uu.nl>
- Date: Wed, 21 Mar 2007 20:03:58 +0900
- To: Håkon Wium Lie <howcome@opera.com>
- CC: Ian Hickson <ian@hixie.ch>, public-html@w3.org, WHAT Working Group Mailing List <whatwg@whatwg.org>
- Message-ID: <4601111E.5020301@students.cs.uu.nl>
Håkon Wium Lie schreef: > > > <object> is *very badly* implemented. It has been a decade since <object> > > > was first created and browsers STILL don't do it right in all cases (or > > > even in most cases, frankly). Adding more complexity to such a disaster > > > zone is bad design. > > > > If the existing problems with <object> are so severe that it can$,1ryt be > > reused (which I somehow doubt) ... > > If <object> work so well, why do you use <img> on your home page? > Because <img> is a perfectly legal tag to use in HTML? The point is not whether or not <object> is implemented fully in browsers so that it shows images or not. The point is that Ian claims that <object> is so badly implemented that it is impossible to really fix it. The kind of problems I would expect then is severe inconsistencies which would make it hard to remove special-case code and make it more consistent without breaking existing pages. Not supporting a certain media type does not fall under that category, I think. If it does, and that is the extent of the problems, then I do not see why <object> could not be fixed. I just tried replacing the <img> tags on my website with <object>, and it worked marvellously in both Firefox and Opera. However, in Internet Explorer it does not work very well because of the Eolas-hover-click. If in the next version Internet Explorer would tie in the image types to its native renderer, that would make it usable. I also tried embedding a video with the <video> element. That didn’t work at all. I tried embedding a video with the <object> element, and hey, that worked in all browsers, and consistently too. By the way, when I claim XHTML can perfectly well be used on the current web, people never point to my homepage to prove me wrong :). > > ... create a new element where you do it right. However, don$,1ryt > > start separating it out into separate tags. > > This is where the first HTML WG (called the HTML ERB, editorial review > board) started. In the first message to that group, on 07 Dec 1995, > Dave Raggett wrote: > > | We have now set up a mailing list for us to continue the discussions > | following on from our recent get together. A press release on the > | agreement to use a single mechanism for inserting multimedia objects > | into HTML is being prepared and should be released shortly. > > (You need member-access rights to see the message [1]. I hope W3C will > forgive me for posting this excerpt on a public list) > > The technical specification describes the <insert> element [2], which > is member-only. The press release went out 11 Dec 1995 [3]. It's > interesting to read, in light of the proposal to do it again. > > Personally, I'd say that the <insert> element (later renamed <object>) > is a remarkable failure in a WG that is otherwise know for a stunning > success: creating the world's most popular document format. > > [1] http://lists.w3.org/Archives/Member/html-erb/1995OctDec/0000.html > [2] http://www.w3.org/MarkUp/Group/WD-insert-951201.html > [3] http://www.w3.org/MarkUp/19951201_Insert_Press.html > Too bad I can’t read the old messages :). That would’ve been nice. But well, I yet have to be explained what exactly the failure is. As said, I tried a few things with embedding an image, video and SVG with the <object> tag: 1. <object data="sitelogo.png" width="320" height="256"></object> 2. <object data="StewieYouknowthatnov.mp4" width="320" height="256"></object> 3. <object data="image.svg" width="320" height="256"></object> First of all, one annoying thing is that you have to provide sizes, otherwise the object will not be visible. In all browsers the object is an inline replaced element. Also, in reality everybody adds a two big attributes for Internet Explorer’s plugin finder, and an <embed> tag inside the object for Mozilla’s plugin finder (which still only works with <embed> and not <object>). These only work if the necessary plugins have already been installed. As for no. 1, as said it works in all browsers, however only Opera and Mozilla render it natively, and stretch the image to fit the provided size. And in Mozilla if it doesn’t load, I can select the alternative text too. Hey, that fixes bug 12460! Internet Explorer uses Quicktime for the image, and Quicktime apparantly doesn’t support transparency, nor stretching of the image, so it looks bad, and you get the Eolas-hover-click thing. As for no. 2, this works perfectly. It looks and works the same in all browsers, except for that in IE you have to click the video in order to be able to use the controls, because of the Eolas patent. Note that native implementation of the decoder would solve this, and so would providing a Javascript API and controlling the object using scripted HTML controls. As for no. 3, it works in all the browsers (although I can’t verify in Internet Explorer because I don’t have the Adobe SVG plugin installed, but I read that it does). However, if the image specifies dimensions, in Firefox they override the object dimensions and you get scroll bars on the object, whereas in Opera the dimensions are ignored and the image is sized to fit the object size. But if you don’t do that, it looks the same. Overall, I think you could say that Opera has the best implementation of <object>. I see a few things that could be better, but nothing that’s terribly wrong. In principle all of these examples worked. These issues can be fixed, without breaking backwards compat. ~Grauw -- Ushiko-san! Kimi wa doushite, Ushiko-san nan da!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Laurens Holst, student, university of Utrecht, the Netherlands. Website: www.grauw.nl. Backbase employee; www.backbase.com.
Received on Wednesday, 21 March 2007 11:05:10 UTC