tomer Relationship Management">CRM</abbr> //AN_Xml:<abbr title="Content Management System">CMS</abbr> //AN_Xml:<abbr title="Structured Query Language">SQL</abbr> //AN_Xml:<abbr title="International Organization for Standards">ISO</abbr> //AN_Xml:<abbr title="PHP: Hypertext Preprocessor">PHP</abbr> //AN_Xml:<abbr title="HyperText Markup Language">HTML</abbr> //AN_Xml:<abbr title="eXtensible HyperText Markup Language">XHTML</abbr> //AN_Xml:<abbr title="Cascading Style Sheets">CSS</abbr> //AN_Xml:<abbr title="JavaScript">JS</abbr> //AN_Xml:<abbr title="European Computer Manufacturers Association Script">ECMAScript</abbr> //AN_Xml:<abbr title="Internet Service Provider">ISP</abbr> //AN_Xml:<abbr title="Internet Protocol">IP</abbr> //AN_Xml:<abbr title="HyperText Transfer Protocol">HTTP</abbr> //AN_Xml:<abbr title="Really Simple Syndication">RSS</abbr> //AN_Xml:<abbr title="Internet Relay Chat">IRC</abbr> //AN_Xml:<abbr title="File Transfer Protocol">FTP</abbr> //AN_Xml:<abbr title="Asynchronous JavaScript and XML">AJAX</abbr> //AN_Xml:<abbr title="Domain Name System">DNS</abbr> //AN_Xml:<abbr title="Document Object Model">DOM</abbr> //AN_Xml:<abbr title="Object Oriented Programming">OOP</abbr> //AN_Xml:<abbr title="Don't Repeat Yourself (programming principal)">DRY</abbr> //AN_Xml:<abbr title="Secure Sockets Layer">SSL</abbr> //AN_Xml:<abbr title="Ruby on Rails">RoR</abbr> //AN_Xml:<abbr title="Keep it Simple, Stupid">KISS</abbr> //AN_Xml:<abbr title="Linux, Apache, MySQL, PHP (common server configuration)">LAMP</abbr> //AN_Xml:<abbr title="Cross Site Scripting">XSS</abbr> //AN_Xml:<abbr title="Search Engine Optimization">SEO</abbr> //AN_Xml:<abbr title="Joint Photographic Experts Group (file format)">JPG</abbr> //AN_Xml:<abbr title="Graphics Interchange Format (file format)">GIF</abbr> //AN_Xml:<abbr title="Portable Networks Graphics (file format)">PNG</abbr> //AN_Xml:<abbr title="Photoshop Document (file format)">PSD</abbr> //AN_Xml:<abbr title="Adobe Illustrator (file format)">AI</abbr> //AN_Xml:<abbr title="Software as a Service">SaaS</abbr> //AN_Xml:<abbr title="Syntactically Awesome Stylesheets">SASS</abbr> //AN_Xml:<abbr title="Red Green Blue">RGB</abbr> //AN_Xml:<abbr title="Hue Saturation Lightness">HSL</abbr> //AN_Xml:<abbr title="User Interface">UI</abbr> //AN_Xml:<abbr title="User Experience">UX</abbr> //AN_Xml:<abbr title="JavaServer Pages">JSP</abbr> //AN_Xml:<abbr title="Active Server Pages">ASP</abbr> //AN_Xml:<abbr title="What You See Is What You Get">WYSIWYG</abbr>

Maybe there could be some WordPress plugin that could REGEX post content and automatically do it?

Got some ones I should add to the list? I'll probably keep the list above specifically web development acronyms not general computer/internet ones.

Abbr’s for Web Nerd Acronyms is a post from CSS-Tricks

]]> http://css-tricks.com/14647-abbrs-for-web-nerd-acronymns/feed/ 67 Group Design Project: Rate Three Candy Bars In Orderhttp://css-tricks.com/14638-group-design-project-rate-three-candy-bars-in-order/ http://css-tricks.com/14638-group-design-project-rate-three-candy-bars-in-order/#comments Mon, 17 Oct 2011 22:26:25 +0000 Chris Coyier http://css-tricks.com/?p=14638

Last time we did a group design project, we did a list with functions and we got lots of interesting ideas. Then the other day I linked to a video of Ryan Singer, a tiny part of which inspired the idea of radio buttons with 2-way exclusivity. Then reader Erik Edhagen suggested I do more of those group design project things... so here we are!

Your Mission

Create an interface where a user is able…

Group Design Project: Rate Three Candy Bars In Order is a post from CSS-Tricks

]]>
Last time we did a group design project, we did a list with functions and we got lots of interesting ideas. Then the other day I linked to a video of Ryan Singer, a tiny part of which inspired the idea of radio buttons with 2-way exclusivity. Then reader Erik Edhagen suggested I do more of those group design project things... so here we are!

Your Mission

Create an interface where a user is able to rate three candy bars (a Snickers, a Twix, and a Butterfinger) in the order of how much they like them (1st, 2nd, 3rd).

You don't need to save the data. You don't need to build an entire web page around it. Just the part where you do the rating.

Create your demo using Tinkerbin and post the link (and any notes/comments you might have) in the comments below. If you want to use a JS library in Tinkerbin you gotta link it up in the HTML section.

There are no other rules. Get creative.

Prize

I'll pick three users who I think did a particularly good job and send them a CSS-Tricks T-Shirt.

Let's say about a week. I'll close the comments on this post on Tuesday, October 25th and pick the winners. Follow conversation will happen in some kind of roundup post.

Why?

Just to be clear, I have no particular need for this. I'm not trying to get "free work" out of you.

I think this is just a fun and useful exercise for practicing design. You learn while thinking through how you think it's best to approach this. You learn while creating it. You learn while seeing other people's approaches. You learn dissecting and discussing all the approaches.

Group Design Project: Rate Three Candy Bars In Order is a post from CSS-Tricks

]]>
http://css-tricks.com/14638-group-design-project-rate-three-candy-bars-in-order/feed/ 201
CSS Shadershttp://www.adobe.com/devnet/html5/articles/css-shaders.html http://css-tricks.com/14584-css-shaders/#comments Fri, 14 Oct 2011 16:32:10 +0000 Chris Coyier http://css-tricks.com/?p=14584

A bunch of crazy awesome affects you can apply via CSS through the filter property: blur, drop-shadow, gamma, grayscale, hue-rotate, invert, opacity, saturate, sepia, and sharpen. Adobe has been doing some great stuff with CSS lately. Their last amazing demo isn't just a demo anymore, it will be implemented in IE 10. Let's hope these make it into the spec and implemented as well.

Direct Link to ArticlePermalink

CSS Shaders is a post from CSS-Tricks

]]>
A bunch of crazy awesome affects you can apply via CSS through the filter property: blur, drop-shadow, gamma, grayscale, hue-rotate, invert, opacity, saturate, sepia, and sharpen. Adobe has been doing some great stuff with CSS lately. Their last amazing demo isn't just a demo anymore, it will be implemented in IE 10. Let's hope these make it into the spec and implemented as well.

Direct Link to ArticlePermalink

CSS Shaders is a post from CSS-Tricks

]]>
http://css-tricks.com/14584-css-shaders/feed/ 0
Darthttp://www.dartlang.org/ http://css-tricks.com/14580-dart/#comments Fri, 14 Oct 2011 16:02:03 +0000 Chris Coyier http://css-tricks.com/?p=14580

It's a new language the runs in the browser and servers. A lot of it is over my head, but I always celebrate new thinking especially when it has a bunch of smart people behind it. The obvious point is that, if it's a direct competitor to JavaScript, that JavaScript has far more browser support. I'm sure that fact isn't lost on the team.

Wasn't this the last Google-originated language? Did that go anywhere?

Direct Link to ArticlePermalink

Dart is a post from CSS-Tricks

]]>
It's a new language the runs in the browser and servers. A lot of it is over my head, but I always celebrate new thinking especially when it has a bunch of smart people behind it. The obvious point is that, if it's a direct competitor to JavaScript, that JavaScript has far more browser support. I'm sure that fact isn't lost on the team.

Wasn't this the last Google-originated language? Did that go anywhere?

Direct Link to ArticlePermalink

Dart is a post from CSS-Tricks

]]>
http://css-tricks.com/14580-dart/feed/ 0
New Poll: Ideal Page Weighthttp://css-tricks.com/14539-new-poll-ideal-page-weight/ http://css-tricks.com/14539-new-poll-ideal-page-weight/#comments Thu, 13 Oct 2011 17:01:46 +0000 Chris Coyier http://css-tricks.com/?p=14539 What do you think is reasonable page size to try and stay under for a modern web design?

New Poll: Ideal Page Weight is a post from CSS-Tricks

]]>
Since that last post was kind of a bust (in a good way!) - let's kick off another one right away. We'll keep it along the same lines: page weight, this time regarding the page as a whole.

Way back in the day Google used to only index 100k of a page (although I think that's the HTML only) but that's not true anymore. 200k for the entire page (including all resources: css, images, js, etc) used to be a common goal. I'd say very few web pages these day come in at under 200k.

The CSS-Tricks homepage right now weighing in at 607k

So the new poll is:

What do you think is reasonable page size to try and stay under for a modern web design?

Poll is in the sidebar.

New Poll: Ideal Page Weight is a post from CSS-Tricks

]]>
http://css-tricks.com/14539-new-poll-ideal-page-weight/feed/ 61
//AN_Xml: if(x[i].namespaceURI == "http://www.w3.org/1999/XSL/Transform" && (x[i].baseName == "import" || x[i].baseName == "include")){ var attr = attrs.getNamedItem("href"); if(attr != null){ x.item(i).setAttribute("href", _AN_full_url(attr.nodeValue)); } } } // Transform var content = myxml.transformNode(xsl); _AN_Call_write('write', document, content); } catch(e){ alert(e.description); } } } _AN_Display_xml(); solution-should-you-use/feed/ //AN_Xml: 37 //AN_Xml: //AN_Xml: //AN_Xml: //AN_Xml: l: Do Something //AN_Xml:</button> //AN_Xml:

What's the most common result of clicking something on a website? Moving to a new URL, like you would clicking a link (an <a href="/example/"></a>) element).

//AN_Xml:

The <button> element, by itself, can't do that. There have …


//AN_Xml: //AN_Xml:

When To Use The Button Element is a post from CSS-Tricks

]]> //AN_Xml: You use it when, uhm, you want a button on your page that users can click, right? Well, unfortunately it's a bit more complicated than that. It's not too bad though, let's figure it out.

//AN_Xml:

//AN_Xml:

It looks like this:

//AN_Xml:
<button>
//AN_Xml:  Do Something
//AN_Xml:</button>
//AN_Xml:

What's the most common result of clicking something on a website? Moving to a new URL, like you would clicking a link (an <a href="/example/"></a>) element).

//AN_Xml:

The <button> element, by itself, can't do that. There have been various conversations about allowing "href anywhere" over the years, but nothing has came of it.

//AN_Xml:

Clicking on a button does do something though, when used in its natural environment...

//AN_Xml:

Button is a Form Element

//AN_Xml:

Web forms have submit buttons. You might think of that like this:

//AN_Xml:
<form action="/" method="post">
//AN_Xml:  <input type="submit" value="Submit">
//AN_Xml:</form>
//AN_Xml:

A <button> element in a <form>, by default, behaves identically to that submit input above.

//AN_Xml:
<form action="/" method="post">
//AN_Xml:  <button>Submit</button>
//AN_Xml:</form>
//AN_Xml:

However gross the UX, forms can have reset buttons as well. You can duplicate that behavior by changing the default submit type to reset.

//AN_Xml:
<form action="/" method="post">
//AN_Xml:  <button type="reset">Reset</button>
//AN_Xml:</form>
//AN_Xml:

Clicking that button will clear all the other inputs (and textareas) with the parent <form>.

//AN_Xml:

Buttons can have content

//AN_Xml:

The primary reason for using a <button> is that it has both and opening and closing (</button>) tag. Which means there can be stuff inside. A common use case would be something like:

//AN_Xml:
<button>
//AN_Xml:  <img src="tiny_birthday_cake.png" alt="">
//AN_Xml:  Submit
//AN_Xml:</button>
//AN_Xml:

While an input can be <input type="image">, this mixed content would be hard to pull off.

//AN_Xml:

As far as I can tell, there is no limit to what kind of content you can put in a button, so feel free to get real weird with it. Pseudo elements can be used too.

//AN_Xml:

Let's leave styling <button>s for another day, but different browsers generally have a special style they apply to buttons. You'll want to either leave that alone so the default comes through, or remove it thoroughly so your new styling can be consistent across browsers.

//AN_Xml:

Let's consider: "if a button doesn’t have a meaningful href, it’s a <button>"

//AN_Xml:

I said recently that I enjoyed that sentiment. That's what kicked off this article for me. At the time, I was thinking of how I enjoyed the semantics of it. As in:

//AN_Xml:
<a href="#0">
//AN_Xml:  I'm kinda sick of doing this for buttons.
//AN_Xml:</a>
//AN_Xml:

There is no meaningful href there. The 0 is just there so it doesn't jump the page, because ID's can't start with a number.

//AN_Xml:

Chances are, HTML like the above means: I'm going to make clicking that do something with JavaScript. Somehow that feels better than a <div> whatever, because you get the cursor change and whatever else default styles.

//AN_Xml:

If you don't like those meaningless href's, a <button> can seem like a nice alternative. But unfortunately outside of the context of a <form>, a <button> is equally meaningless.

//AN_Xml:
<button>
//AN_Xml:  Outside of a <form>, I'm just as useless.
//AN_Xml:</button>
//AN_Xml:

But <button> feels better anyway

//AN_Xml:

Even if a <button> doesn't do anything outside of a form without the help of JavaScript, it still feels better for things you can click that do stuff other than change pages. A bogus href link definitely doesn't feel right.

//AN_Xml:

Alright. Let's insert it with JavaScript then.

//AN_Xml:

That's probably the best solution. If JavaScript is required for the clickable-thing to do anything at all, it might as well not even be there at all unless JavaScript runs. We can do:

//AN_Xml:
// 1. Create the button
//AN_Xml:var button = document.createElement("button");
//AN_Xml:button.innerHTML = "Do Something";
//AN_Xml:
//AN_Xml:// 2. Append somewhere
//AN_Xml:var body = document.getElementsByTagName("body")[0];
//AN_Xml:body.appendChild(button);
//AN_Xml:
//AN_Xml:// 3. Add event handler
//AN_Xml:button.addEventListener ("click", function() {
//AN_Xml:  alert("did something");
//AN_Xml:});
//AN_Xml:

You could easily have "button adding" be a part of your JavaScript workflow.

//AN_Xml:

When links make more sense

//AN_Xml:

If there is any kind of href you could put on that link that makes sense, by all means, use an anchor. Even if you override that behavior with JavaScript. That's progressive enhancement at it's finest. For instance:

//AN_Xml: //AN_Xml:

If nothing makes sense, insert the button with JavaScript.

//AN_Xml:

Accessibility concerns

//AN_Xml:

Let's say using an anchor link does make sense. After you give yourself a nice little back-pat for being good at progressive enhancement, there is accessibility to consider as well.

//AN_Xml:

You might be like, I got this!

//AN_Xml:
<a href="#meaningful" class="button" role="button">
//AN_Xml:  I'm good
//AN_Xml:</a>
//AN_Xml:

But you aren't out of the woods yet. MDN covers it well:

//AN_Xml:

Warning: Be careful when marking up links with the button role. Buttons are expected to be triggered using the Space key, while links are expected to be triggered through the Enter key. In other words, when links are used to behave like buttons, adding role="button" alone is not sufficient. It will also be necessary to add a key event handler that listens for the Space key in order to be consistent with native buttons.

//AN_Xml:

Get that? You activate links and buttons with different keys, so consider that.

//AN_Xml:

Go forth and uhm, make clickable things correctly.

//AN_Xml:


//AN_Xml: //AN_Xml:

When To Use The Button Element is a post from CSS-Tricks

]]>
//AN_Xml: http://css-tricks.com/use-button-element/feed/ //AN_Xml: 94 //AN_Xml: //AN_Xml: //AN_Xml: //AN_Xml: