In an ideal world, Opera would "just work" with any page out there.
Welcome to the reality and the World Wild Web.
I was recently asked why a certain product's website didn't appear properly: several icons were missing. These icons were essential for using the page. Not a good situation for someone who prefers using Opera but needs that page to work.
I was sent a code snippet which showed that the site was formatted with a huge number of nested tables. The missing icon was in a table inside a table cell inside God knows how many other nested tables. The innermost table was coded to have a width of 1% which becomes a fairly small value considering that it is inside a cell with a width set to 3%. I'm not sure how wide your screen is but at least on my screen 1% of 3% of the width leaves no space for a button graphic, which is the likely reason why Opera did not show it. (Doing the maths: the first cell should on my 1024px wide screen have a width of 3% or 30px if Opera displays it in full screen with not hotlist, the inner table should thus have a width of 1% of 30px, in other words 0.3px… As pixels are the smallest units on computer screens, anything less than 1px can not be displayed at all. )
By not showing the icon, Opera is following the instructions in the code. Perhaps IE contains some extra routines to catch and ignore impossibly small cell widths. The page wasn't technically violating the standard. Nevertheless, it is a situation where we can only show the page as the webmaster intended by ignoring what the webmaster actually tells us to do.
Another issue is the Opodo-problem I wrote about in this article:
The ECMAScript standard is absolutely clear that selecting something that does not exist should cause an error and stop the script. Following the standard broke Opodo.
This is not the only reason why some pages do not work with Opera – the other big reason is browser detection. But this reason is what makes it so hard to be compatible with all pages. First you implement the standards as well as possible (in itself a big job) and then you will have to discover, analyse and implement all the little details in general use that are actually standards violations or illogical coding mistakes tolerated by the other browsers.