The PSP's internet browser is a very strange place. HTML- and CSS-wise it's fairly normal and has very good support for its time. HTML 4.01 and CSS1, with large chunks of CSS2.
It gets weirder when it comes to JavaScript. It supports JavaScript 1.5/ECMAScript 3, but with huge, important chunks blown out of it.
Sony released a document, Content Creation Guidelines for the PSP Internet Browser, that detailed all the ins and outs of the browser, but it's sadly vanished without a single trace from the net. Thankfully, the Japanese copy of the same document is still live.
After the document fully loads, that's about it. You have very little ability to manipulate the DOM. You can't create elements, remove elements, can't add or remove attributes.
During load, you can use document.write
to dynamically generate content, but after load is complete, further calls will erase the page without creating a new document.
Oddly, innerHTML
seems to be supported but also seems to escape any HTML assigned to it.
Can't access contentWindow
or contentDocument
, although the child can access its parent. And the parent has an HTMLHtmlElement
as its child so maybe that's a way to access the iframe contents.
The PSP has excellent support for the CSS of its time, minus a few broad categories.
Probably the most painful restriction is that there's no way to set a min or max width on elements. And nothing at all to do with height.
There's also quite a few restrictions on the display
property, anything to do with tables, table rows, cells, anything, is unsupported.
It also doesn't support much of anything to do with the manipulation of text. Font stretching, shadows, letterspacing, and text transforms are all out. The PSP supports 2 fonts across 5 different sizes and that's it.
It doesn't support pseudo elements that target specific parts of things, such as :first-line
, :first-letter
, or :before
or any related properties like content
.