Slashdot Mirror


Check Boxes and Radio Buttons Conquered by DHTML

Philip Howard writes "Pretty much every form element has been conquered by CSS so far, letting us create stylish, integrated forms to tie in closely with our site designs for that UI polish graphics artists love to have. Radio Buttons and Check Boxes, however, have resisted most attempts to style them consistently, accessibly and elegantly- perhaps because nobody cares enough to come up with the solution. However, these elusive form elements have finally been conquered with a simple combination of CSS and Javascript and a little HTML wrapper. The solution is easy and quick to implement, is accessible (working with tab and space) and elegantly degrades where CSS and/or XHTML is not available."

10 of 522 comments (clear)

  1. Re:The real question is by AKAImBatman · · Score: 4, Insightful

    Will Lynx render them correctly with ascii-art?

    Yes, actually. While I'm none to keen on the idea of supporting old browsers in DHTML/AJAX/Whatever-you-want-to-call-it-this-week applications, his solution is designed to allow for normal checkboxes to show in browsers that lack JavaScript. As a result, the normal "text" checkboxes would show in Lynx. At least until Lynx gets full JavaScript and DOM support. Then you have problems. ;-)

  2. On bells and whistles by PIPBoy3000 · · Score: 4, Insightful

    There are certainly some people out there who are impressed by cool graphic tricks.

    After writing web applications for ten years, though, I find that more and more people simply want to get the job done. Perhaps it's that I work in Healthcare and my customers are busy people caring for patients.

    The other thing that makes me nervous about bells and whistles is that they add complexity to things. Complicated things break. Browser makers have changed how they implement CSS and DHTML before and there's a good chance they'll change it in the future. Basic support for checkboxes will last another fifty years.

  3. Missing the point by illtron · · Score: 4, Insightful

    A lot of people seem to be missing the bigger point here. It's not that he's replacing checkboxes with images, it's that he's managing to do it while keeping the page properly structured and accessible to all browsers. While the page isn't quite all the best HTML underneath (what's with the tables?), if you look at the forms, it's proper HTML and not some javascript hack that will break old browsers.

    I think that's the point, anyway.

    --
    Slashdot: 24 hours behind every other site or your money back!
  4. Re:Not really new, but interesting by thirteenVA · · Score: 4, Insightful

    Here we go...

    Why is it that amongst web developers there is only considered to be 'one way to do things'.

    Standards compliance is a good guideline, but it is not law.

    Web developers only need to cater to those devices in which they expect their content to be viewed. I do not expect, nor do I desire for someone to use my company's web apps from a cellphone or PDA.

    Yet, people wear their xhtml compliant gif's like medals of honor.

    Write your pages with compliance in mind, but never lose site of refining your apps and pages for your target audience, regardless of it if bends the standards.

  5. Re:Not really new, but interesting by gstoddart · · Score: 4, Insightful
    Many Flash developers don't seem to understand this either (modulo the huge list of problems with using Flash). HTML should deliver the Flash, not the reverse.

    This is my biggest problem with flash.

    There is nothing more annoying than browsing to a site from a machine which doesn't have flash installed (don't want it) and realizing the site was written in such a way as to not be able to get past the into animation without flash.

    People who make web-sites which can't be operated without flash need beatings.
    --
    Lost at C:>. Found at C.
  6. Re:Not really new, but interesting by hacker · · Score: 5, Insightful
    "There is nothing more annoying than browsing to a site from a machine which doesn't have flash installed (don't want it) and realizing the site was written in such a way as to not be able to get past the into animation without flash."

    I'll give you some more fuel to pour on that fire:

    1. Can't change contrast (for those who might be colorblind and can't see light grey text on a white background. Who taught these kids color theory anyway? Barney the dinosaur?)
    2. Can't change font size (whaddya mean you can't see my 6 point fonts, what are you, blind?)
    3. No ability to search the text of a flash page using standard browser "Find" functions (yes, some search engines can index Flash now, with the proper hooks into the Macromedia Flash SDK, but its not exposed on the user end)
    4. No fallback for non-Flash browsers, built into the Flash itself

    It irritates me too, so I just don't use it, or recommend sites that do. Let's just make our entire site in PostScript, or better yet an OpenOffice.org .sxw or an OpenDocument .odp file format.

    "Why not? You don't have the right plugin? Oh, too bad... get with the times!"
    </sarcasm>
    "People who make web-sites which can't be operated without flash need beatings."

    People just need beatings anyway, just to let them know they can be beaten by anyone for any reason. This whole "Gimme" generation and the new business model of "Don't have a viable business plan? Sue someone! Profit!" needs to stop.

    I'm going to have to start a new campaign called "Slap the Stupid out of Everyone" that does just that. Can't count change in the drive-thru? Find a new job, you're fired. Can't figure out how to answer questions about your product in the store? You're fired. Parking like an idiot? Towed.

    I'm tired of just ignoring and tolerating stupidity and ineptitude and excuses. It has to stop.

  7. Re:Why JavaScript? by mrchaotica · · Score: 4, Insightful
    However, the only times I get to "experience" it are when websites want to do something stupidly useless, like resizing windows or goofing with the mouse pointer, or bury me in multiple cascading popups.
    The corollary of that is that when JavaScript is used correctly, you don't notice it (e.g. Google's various pages).
    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  8. Fucking graphic design majors by Thaelon · · Score: 4, Insightful

    One of the most fundamental concepts of good UI/GUI design is that you DON'T INTRODUCE NEW THINGS.

    Everytime you introduce something new the user has to learn how to use it or what the fuck it is. This is bad. Really bad. You just won't believe how vastly, staggeringly, jaw-droppingly bad it is.

    It may seem incredibly anal, stale and anti-progressive but that's the whole point. There's no such thing as an innovative interface because innovation has connotations of something both new and better. In the realm of Human Computer Interaction (HCI) new and better are mutually exclusive. Good UIs are simple, intuitive and introduce absolutely nothing new. Ever.

    There are only two truly intuitive interfaces in existance. The nipple and the vagina. The rest you have to learn how to use.

    Save the styled checkboxes and radio buttons for other people in your yuppie coffee house. Your average user doesn't want them, won't understand them, won't appreciate them and doesn't care what they look like.

    --

    Question everything

    1. Re:Fucking graphic design majors by RosenSama · · Score: 5, Insightful
      I don't agree with this in two different ways.

      #1 "new and better are mutually exclusive"
      You are saying there is no way to improve UI. If new (change) is mutually exclusive with better than then only thing left is old (unchanged). Without change, there's no way to get better leaving a permanent status quo. By adhering to these arguments we'd still have rotary phones, analog clocks, and the command line.

      #2 They didn't introduce a new UI element, they just learned how to make existing ones match the page.

  9. Re:Not really new, but interesting by mcfuddlerucker · · Score: 4, Insightful

    >> the guy who wrote it is either lazy, unprofessional, working to an unrealistic schedule or shit at his job.

    Thankfully you put that middle one in there. I was about to cloud up and rain all over your ass.

    Many of us want to do, and vocalize the importance of doing the right thing, but our hands are tied. Don't forget that.