HTML Logo by World Wide Web Consortium (www.w3.org). Click to learn more about our commitment to accessibility and standards.

Moving forward with Composr

ocPortal has been relaunched as Composr CMS, which is now in beta. ocPortal 9 will be superseded by Composr 10.

Head over to compo.sr for our new site, and to our migration roadmap. Existing ocPortal member accounts have been mirrored.


10 features that are really missing from the web - a wishlist

10 features that are really missing from the web - a wishlist Here is a small collection of things I really think web standards are missing. I wish I had time to get involved in the W3C and suggest this, but between ocPortal and our clients, I just don't have the free time. If anybody knows if any of these are planned or wants to suggest them, let me know! I keep up-to-date with specs like HTML5 and CSS3, and a lot of things will be solved when these are finally available in browsers – so I haven't mentioned those things below.


1) If browsers could state via the HTTP protocol whether they support cookies and Javascript, webapps could make some better decisions about how to put different kinds of content out. For Javascript there are some ugly solutions like using JS code to add in extra dynamic interfaces, but it's not at all elegant. For cookies, it is hard to tell whether to right session ID's into URLs or not, so you have to do some complex non-standard negotiation to do it.

2) I wish CSS could do simple equations like 20%+10px. Currently you need to add extra elements, and this can get very ugly and breaks the separation of concerns goal (you should not need to go and edit the XHTML to do common style changes). I don't believe CSS3 has this yet, although I could be mistaken. I do know it's a very popular request among web designers.

3) It's impossible to make truly modular CSS. You can share properties across multiple selectors, but that requires you to edit a single point of code each time, which is the anti-thesis of good engineering. Some form of OOP-style inheritance solution is needed. Again, I do know it's a very popular request among web designers.

4) Users don't trust the back button. They click it and it often asks them if they want to "resubmit a form". I propose a very simple change: include different icons for the back button, depending on whether such a message would happen or not. Of course this won't fix all the problems where developers don't use GET and POST correctly, but it's a start.

5) For the love of God I wish someone would standardise how key codes can be read by Javascript, providing a full complement of scan-codes and ASCII values. Standardise what event handlers can read them, and what the parameters are called. The current situation makes key handling in Javascript almost unbearable. It may be a DOM specification has done this, I'm not sure, but if it has the browsers have not caught up.

6) The XHTML 'base' tag is pretty much useless, because it breaks anchor links like '#example' (that becomes relative to the anchor, which typically ends up mapping to your index page). Let's get it fixed.

7) There's a common usability problem where if you click an anchor near the bottom of the screen and there's not enough scroll room, it'll maximally scroll, but it won't be clear what's been anchored to. I propose browsers do what word processors do when you scroll outside a page bound - extend the scroll bar as much as required show an arbitrary block of gray browser chrome in the new gap. It's such a big and basic problem that I think this is warranted. Of course there are solutions using Javascript, but this should be controlled nicely by default browser behaviour.

8) I wish CSS could have a property to disable margin collapsing (when the adjacent vertical margins of two boxes get merged into one continuous gap, irrespective of things like different background colours. It can lead to problems that are really hard to workaround when box backgrounds are concerned.

9) Every browser should have a decent upload progress bar, with a percentage and a "time remaining". Firefox is the worst offender here, with a bug relating to it's basic statusbar not having been fixed in years. There are workarounds using Flash, or Javascript and Perl, but they all involve heavily rearchitecting a webapp, giving uploads their own independent status; that's not good, they should continue to work as elements within a wider form that is all submitted at once.

10) CSS needs the ability to hyphenate words if they don't fit in a box, with the feature controlled by a new property. Sometimes you have a really long word that might fit in a box in the design normally, but if the font size is made too big, it could leak out, overlaying something else (or worse, cropped, depending on overflow settings). Tabular designs don't have this problem, so let's not give people another excuse to resort to tables!

View all

Trackbacks

There have been no trackbacks yet