As an interaction designer, I implore you: do NOT screw around with forms. Your conversion rates will fall through the floor. The CSS specification itself says that browsers can ignore styling for forms. This is by design. Overriding it with a bunch of unsupported animated nonsense that requires Javascript and invisible divs and such is a recipe for disaster from a usability and accessibility stand point.
If somebody were doing a browser-based game there is absolutely a place for this. Sure, general apps should not do this, but I wouldn't say you should never do this.
That said, the performance on this is too poor to use as is.
You could argue that standardised data is a good thing- certainly, we developers argue that case constantly. As such, hand-written "input" being standardised could be an equally good thing.
I always find that I agree and disagree with these kinds of comments. From an accessibility and standards point of view, I absolutely agree – don't fuck with what people understand. From a progressive, artistic point of view I think these kinds of implementations allow for some creative expression. In the end, all industries have the artsy take on what is possible, but not necessarily ideal.
As with most things, it's all about balance. Is the atmosphere of your web form worth losing 10% of its conversions?
If you're designing MYST for the web browser; probably. If some small percentage of luddites can't get past your fancy character creation screen, then the game is (likely) not for them. Their frustration is worth it for the total immersion for the ones that can. There are a number of environments in which a cohesive experience trumps the drawbacks of a fiddly interface. But if someone is wanting to convert sales of a B2B accounting application, or needs to create batch data entry forms for said application, then things need to be weighed differently.
Being a good designer isn't about knowing how to recreate [software from the 90s] in Javascript or CSS3. It's about making lots of little decisions like this all the time.
So many paternalistic comments here telling us to please not use this. As if it was not obvious enough this fancy input is properly useless, and very interesting in its uselessness, as an experiment or an exercice de style.
Usefulness is overrated. Would no human ever had followed the craze of useless endeavors, we would still all be living in caves, and would not even draw with fingers on theirs walls.
Wow, that talk is fantastic. I think a lot of it applies to regular web interaction design, too, except that there you probably need to be more subtle.
I guess that I enjoy cleanliness over pizazz. I would argue that it should really only be used in juicy environments. Put it in Peggle, but not in any email client, my tax forms, anything where I'm trying to do something that isn't purely fun.
The whole page flashes and flickers for me on Safari 6.0.2 on Mac OS X 10.8.2.
Input of extended characters also doesn't work. Option-[aeiou] doesn't enter any characters. Holding [aeiou] prints the base character but fails to update once a modifier is selected.
The antialising algorithm alternates between subpixel and greyscale, causing flickering changes to the boldness of the text.
Bug report: I managed to get it into a state where it's impossible to delete the characters behind the cursor. I remember pressing the Euro sign (alt-gr + 4) and accidentally hitting the 'Windows' key. Here's a dump of the DOM state:
http://pastebin.com/ELyMNAKd
Cool, but please don't use this. It is essentially unusable on my iPad. Virtual keyboards tend to choke on such fanciness. If you want my input, make it easier, not harder for me.
Ugh. When I select text, the selected text does not appear in the same location as the corresponding unselected text, the cursor doesn't line up with the selected text, and the cursor moves to incorrect locations in the text as I move it with shift-arrows.
Pretty. But whenever I see something like this on a website, I disable styles. As easy as Ctrl-Alt-Z on my browser.
I do it for blogs that have fancy title css, scripted comments... just about for anything that's unnessesary junk and therefore just a pretty annoyance.
It's certainly "fancy", but... as someone who has been forced to go down this road more than a few times for desktop and mobile platforms please do NOT encourage this. The level of manipulation and monitoring of key events necessary to get even close to parity of normal input behavior and accessibility, which this example unfortunately doesn't do very well, is enough to drive one into voluntary retirement.
It's fun to look at and play with, and I know it has some useful applications, but it quickly becomes incredibly fragile and is guaranteed to waste time and effort that can, and should, be spent on other stuff. Unless of course there is nothing left to do and you're just looking for ways to torture some poor soul hopped up on Red Bull or Mountain Dew.
That said, I definitely do encourage anyone interested to explore how this stuff works. My experience has been that design pretty much overlooks input behavior in general, but there are some pretty impressive things that can be done now without painting yourself into a corner and exploring stuff like this is probably one of the fastest ways to figure out where the boundaries are.
The number of bug reports in my opinion sums up the problem with doing this thing. Even though these effects can be really neat, there is nothing worse than somebody trying to put in data and have the form not accept thier input for an unknown reason.
That being said, I think these could be really neat in certain places and maybe with a bit more testing this could be super useful.
Looks great! A few bugs, and probably many usability and compatibility issues, but I can see something like this finding its way into a movie or game website. Too flashy for a regular form input, but in the right context it would feel at home.
Clicking the input box when it's typing "type something..." is causing a crash for me. Also, I broke it by hitting home and then spamming the left arrow key. :)
FYI: Switching to an IME to enter Japanese (or any other language, I imagine) breaks it and doesn't allow typing. Switching back to English doesn't fix it. Putting the cursor at the beginning again allowed me to type English, but I can no longer type at the end.
Tried it on Chrome. Non-english characters look awful - fonts are mess, typing effects work randomly. Sometimes all I'm typing is invisible. For me it's unusable.
This is a bad idea - forcing every DOM node to become a hardware accelerated layer is going to introduce a huge amount of memory overhead (webkit doesn't release composited layers when they scroll off screen, in many cases)
A better approach is to apply -webkit-transform: translate3d(0, 0, 0) to only those nodes that will animate.
Your mobile viewers, especially, will be glad that your page doesn't kill the browser (when it goes OOM)