Presto
Opera 10.0 includes the Presto 2.2 rendering engine.
Rendering
Significant performance improvements
Added Web font support, allowing the download of fonts specified in font descriptors in @font-face at-rules; TrueType (TTF), OpenType (OTF), and SVG fonts are supported (demos)
Achieved 100/100 and pixel-perfect rendering on the Acid3 test
Pretty-printing of unstyled XML (using unstyledxml.css in the Styles sub-directory of Opera's installation directory)
Added support for CSS3 RGBA color values (demo)
Added support for CSS3 HSLA color values (demo)
Added support for the CSS3 color: transparent value
Added support for the viewport meta tag key
Improved HTML5 support, including end-tag and start-tag parsing, whitespace parsing, and DOCTYPE parsing
CSS files must be served with the correct MIME type ("text/css") in Strict mode or they will be ignored
JavaScript/DOM
New regular expression engine, which greatly improves performance on regular-expression-heavy pages such as the SunSpider JavaScript Benchmark
Added support for the W3C Selectors API
Renamed the objects returned by getClientRects() and getBoundingClientRect() to ClientRectList and ClientRect instead of TextRectangle and TextRectangleList, respectively
XMLHttpRequests will now trigger start-loading/end-loading events
Removed the proprietary window.setDocument method
Added support for the SVGElement.currentFps and SVGElement.targetFps properties to read and control, respectively, SVG frames per second
The load event for scripts is now sent after the script is executed rather than before
The load event is now sent to frame/iframe/object elements before it is sent to the document
A highlight will no longer be added when HTMLElement.focus() is called unless keyboard navigation is already activated
Other
Removed UTF-32 encoding support
User JS files will now be executed in alphabetical order rather than file system order
HTML5 canvas elements can now export images to the JPEG format
HTML5 canvas transforms are applied when building a path, not when painting it (this change is made to work like Mozilla)
The first ID (instead of the last) is now used on pages with duplicate IDs when navigating to fragment IDs
Added support for the altGlyph element in SVGs
Added support for 32-bit alpha in BMP and RLE-encoded BMP images
Implemented HTML5's algorithms for detecting charsets in HTML