Opera 7

Last minor update: 24 May 2004
Last major update: 8 October 2003.
Tested version: 7.50

With the release of Opera 7, Opera Software has made a great leap forward. Work on the code engine that powers Opera 7 began more than a year ago. Its purpose was to allow for a reflowing of the page, which in turn allows for advanced DHTML effects and real use of the W3C DOM.

When a browser loads a page it determines how it will be shown to the user. Modern browsers allow this initial layout to be changed later on, while older browsers don't. Opera 6 and below could not change this initial layout, could not reflow a page. Opera 7 can.
Similarly, Netscape 4 could not change the initial layout while Netscape 6 can. Explorer has always been quite advanced in this respect.

So Opera 7 fully supports the W3C DOM, and as a result it can completely change the page without reloading it. The only thing it cannot (yet) do is importing an XML file.
I haven't yet found any bugs in its W3C DOM implementation, though no doubt something nasty will lie hidden somewhere. But for the moment it's very good indeed.

Some old problems have disappeared. Opera 7 supports clipping, which means that my Scrolling layer script works. Since a page can be reflowed, Opera 7 also supports the changing of the display declaration, which means my display navigation used in the frame on the left finally works.

Explorer compatibility

Since Version 6 Opera has been busy moving towards Explorer's way of interpreting CSS in Quirks mode (but not, as far as I know, in Strict mode).

For instance, in Quirks mode it now uses the border-box as default box sizing, as Explorer does, and it supports overflow: visible in the same way: the box sizes with the content (see the Overflow page).

It seems to follow Explorer's doctype implementation, including the use the XML declaration. If you put this on the first line of your page

<?xml version="1.0" encoding="iso-8859-1"?>

Opera switches back to Quirks mode, as does Explorer 6.

In JavaScript it supports the document.all DOM, but otherwise it doesn't seem to move particularly towards Explorer's implementation.

Bugs

Of course there are still some bugs:

Mac

Opera 7.50 for Mac has appeared at roughly the same time as the Windows version. For the first time, Opera has the two main OSses in sync; the Mac version used to be four to six months behind the Windows version.

I haven't yet discovered any differences between the Windows and Mac versions, but that doesn't mean they're not there.