Welcome to WebmasterWorld Guest from 126.96.36.199
Forum Moderators: incrediBILL
In a new article by the Opera Core Developers, we get a look into this under-appreciated feature of the modern browser. As the above article says, "Often a broken site is not our fault, but it's most definitely our problem. And we must make it work today. Not in 2022."
Here are some examples they cite of browser site patching:
Sometimes Opera's site patching gets even more detailed:
We can add the single missing class name when AOL Japan abuses browser detection and doesn't apply correct styles, and correct AOL webmail's spelling mistake when they spell dojoType as dojotype.
We can fall back to a graceful postMessage() call when E*Trade tries to violate the security policy against navigating another site's frame when it loads encrypted content
It's one heck of an article, and certainly gives me a deeper appreciation for what it takes for any vendor to put out a world-class browser.
An illuminating read: [my.opera.com...]
The first massive mistake everyone makes is coding to IE and then wondering why their sites won't work in rendering engines that support standards like those from the year 2001 (you know, eight years ago) such as...
XHTML: application/xhtml+xml: if it's broken it won't work and that's why I use it. Can't serve that media type to IE? IE doesn't support XHTML but it does support XML, use the application/xml media type instead and with a little tweaking if your page is broken it'll break in front of your eyes. It's good practice too especially if you work with databases or can't easily validate your XHTML code. Think it's a waste of time? A week ago someone blew an entire day wondering why Safari was rendering code differently and started posting server side code...why? If the page was served as XHTML or even XML it would have broken and given him an error message instead; it was a missing double quote.
CSS: Using level 1 for layouts (and validating your CSS file as only CSS level 1) by using divisible elements with floats while using margins as padding (for second generation divisible elements) there is no layout that is impossible. CSS2's positioning allows you to move things around for SEO purposes.
Frankly I would like to see a rendering engine that will only render a page if there are no errors and possibly warnings though many warnings are debatable.
As far as browsers are concerned they need to stop trying to fix sites; it's completely unacceptable. I've have multi-column support on my blog since Gecko 1.8 (Firefox 1.5 for those who don't know their rendering engines). Speaking of which how many of our fellow web designers actually test engines instead of browsers? There is no need to test Firefox 1.8 and 2.0, they use Gecko 1.5! IE 5.0, 5.5, and 6.0 have virtually all the same bugs with some rare exceptions that most designers won't understand. Still waiting on useful CSS3 properties Opera! Still waiting for something new and useful in the DOM IE...since I think 5.0 save for the support of responseXML!
Then there is outsourcing: no not that type, I mean web design being outsourced to web developers. That's what really irks me about the IE blog, why are they talking about web developers?! They do server side code, not client! If you're working on a client side code then you're doing web design just like working with images and Flash is graphic design. Most web designers have great skill at least graphically speaking though what percentage actually work with a back end CMS or databases in example? It takes a lot of skill to do both competently and I've never met or talked with anyone who rocks hard at both naturally, not that one can't learn. I digress, most companies are willing to ax off a web design position and outsource it to developers who usually don't have the mindset for client side. When you're busy developing your client's next database as a developer you shouldn't be carrying the weight of wondering why importNode isn't working in IE (8) (as it's not supported without (you guessed it) a hack!)
I personally get a lot of criticism for my own design but that's not the point really. No amount of polish matters if your page won't load before visitors leave, if it's not going to be found in SERP's on search engines, and if you can't get the basic CSS1 working in Opera 10, Safari 4, Firefox 3.5, and IE 5.0...or even IE 4 and Opera 4...yeah CSS1 works almost flawlessly across all those browsers.
Using document.write, innerHTML, iframes, text/html, and referring to elements as "tags" will not only hold back web designers it will hold back the industry. I frequent the HTML5 forums a lot and some of the requests I see like references to the long deprecated embed element surprise me to no end. IE 5.0+ and every other browser I've tested (and I'm talking over 40+ versions of each rendering engine) properly support alternative content inside an object element. If this is the type of input browser vendors and standards groups are going to be bombarded with what does that say about our industry?
"It is those who have this imperative demand for the best in their natures, and who will accept nothing short of it, that hold the banners of progress, that set the standards, the ideals, for others." - Orison Swett Marden
[edited by: JAB_Creations at 6:00 am (utc) on April 8, 2009]
Sometimes the broken page is because SEO hackers have injected a bunch of links into the page in a bad place or something similar, and it should just break so people know.
I would go as far as saying the majority of web content today is not in perfect form.
Any browser that would take the approach of only showing 100% validated pages would not be useful to 99% percent of Internet users as it would always be showing error pages.
Then again, I'd like to have been old enough to have had a date with Angie Dickinson when she made that movie with John Wayne. Oh... the impossible wishes!
maximillianos, then those people either learn to do their job right or find a different industry to work in.
How many programmers do you think would keep their jobs if every time you tried to use their software it simply crashed?
Heck, RSS feeds that don't validate get kicked out of RSS feed readers, so why should web pages should be treated any different?
It's either valid or it isn't.
The fact that the problem is bad coding is irrelevant to the average user.
Hence the urgent need for a "View as Developer" option, ie. show us what we did wrong... Set as default OFF so only the brainiac webmasters will turn it on to see what the web REALLY LOOKS LIKE.
Otherwise, where is the incentive to clean up code?
Not because I work on this field but: such practices should be avoided. They allow millions of bad designers to make their living with bad practices promoting hacks and hacks, not hard work, not clean work. And, they make standards hard to work with as you are not getting what the code really says.
Could it be at some point a legal point? offering something that technically the engine doesn't really do? (render code as it is?).
The list they give is totally irrelevant.
When i look at the browser list hacks in the article i see that, IE (Microsoft) has 2400 site hacks..
Google hacks Hotmail.. because again it is Microsoft.
The Firefox user-agent switcher is for development purposes.. so irrelevant.
Opera is totally crazy with browser.js
I don't want to go flaming here but i'm a notepad website builder for about 10 years. I know IE is called as the horror browser by us website builders.. Everything else then IE must be better, i disagree:
I'm a big Firefox fan, and in past days i was anti-IE but sometimes when i'm testing with IE it looks like im thinking this browser is not that weird. I can't explain but IE is doing a good job. One thing i know is that IE can be blazing fast. Switching between pages in a site don't flash the logo for example.
Although mr. Firefox is doing better ;)
We just have to apply W3C standards.. XHTML, CSS3, HTML5 and the browser developers just have to be faster with implementation.
Implementing hacks for websites is just a browser killer. I think we end-up with 2 major browsers, FF and IE. I hope the war is over, Opera back to your roots ;) Nice music by wonderful womans.
It's about doing your job competently...
For *us*, yes. For normal people it's about easily publishing and accessing information. Low barriers to entry is a feature, not a bug.
Implementing hacks for websites is just a browser killer.
The original article suggests site patching works [my.opera.com]
Besides, how hard is it to get a page to cleanly pass 4.01 transitional?
LOL. On the forum for my cart software, it's very common for 'webmasters' (of ecommerce sites at that!) to have NO clue about page validation, doc types, browser quirks mode rendering, etc. They design in IE on a huge geek-toy monitor and wonder why their sites looks like crap on other systems, browsers, etc. And their conversion rate sucks.
After numerous post trying to help people clean up their code and validate, we get replies like this that make you shake you head (my emphasis added):
Update: I removed the DOC type and charset lines, and the site is back to normal.