Wednesday, April 9, 2008
Part 2 out of 2 (Part 1)
The only time a web designer notices the Outline property is when you want to disable it, and you’re wondering how to do so or if it’s even possible. But you can actually use the property to do very clever things.
At a first glance, the Border and the Outline property look very much alike. They share the same rule structure, and they both put a border around any object you want. But there are two fundamental differences.
1. When the browser calculates the width of a floated object, it takes into account Width, Padding and Border.

Notice how setting a border adds to the total width, while the outline doesn’t.
2. Since borders take up space, you can have problem aligning elements on a webpage using borders. However if you use an outline instead, the “border” will just be a layer on top of the image and won’t push your element anywhere. Notice how the second image’s inside border still lines up with the text.

This is very useful for registration processes, if you want to show a field that needs to be corrected: Instead of applying a border and having the textfield move X amount of pixels horizontally you can apply an outline!
How to use Outline, examples
Example:
.classNameHere {
outline: 1px solid #000000;
}
Example 2:
.classNameHere {
outline: 2px dotted #FF66CC;
}
I hope you enjoyed this little introduction to the Outline CSS property!
Sunday, March 16, 2008
All browsers have their flaws, that’s for sure. But sometimes you see pure stupidity, and then it might be worth writing something about it.
If a web page doesn’t have a doctype, it usually means that the page is either very old or created by someone that don’t care or doesn’t know anything about doctypes. The strange thing though is that Internet Explorer treats those pages as something completely different than normal, modern web pages. If you don’t add a doctype to your HTML document, Internet Explorer will not rely on it’s rendering rules any more. For example: If you set both a width and a padding to an element, normal browser rendering makes the total width of the object to be width+left padding+right padding.
.box {
padding: 10px;
width: 200px;
}
The total width of .box becomes 220px. However, without a Doctype to rely on, Internet Explorer does not default to a simple Doctype like HTML 4.01 Transitional which would follow this rule. Instead it decides that the page is not worth a second chance, and some rules are rendered incorrectly. In this example, .box would actually become 200 pixels wide according to IE’s rendering.
You might think that this is not a big deal, but consider that other browsers are smarter than this, which makes the crossbrowser rendering of the web page a mess. It is also a fairly unknown and “not so easy to discover” kind of bug which makes it even harder.
Read about the existing Doctypes and why you should use them over at A List Apart: Doctypes.
Friday, March 14, 2008

UPDATE 2008-03-20: This bug is easily resolved by upgrading to the latest Beta version of Firebug (currently 1.1). Thanks to PatternHead!
I’ve experienced this bug for quite a while now, and it is really annoying. Basically you can’t inspect an anchor in Firebug, and there’s no way around it.
Today I had enough and decided to do a thorough search on the web to get rid of the problem.. Looks like it’s a well known bug. Someone suggested that I’d revert back to Firefox 2.0.0.11, as it didn’t have this bug. I found an old version, sadly a .exe though. I could not find any mac equivalent, until I stumbled across a Ukrainian .dmg file… So now my Firefox is in crazy Ukranian, but at least it works properly!
Friday, October 5, 2007
I’m not very experienced in Flash. I can do basic movies with tweens, some playback buttons and maybe one or two animations, but that’s pretty much it. For a recent project however, I had to do a pause button.
Now this might seem like an easy task, but it isnt. A pause button must both pause and play the video. I looked around the web for some easy solutions, but couldn’t come up with anything useful (although I’m sure there are guides for it out there, I just didn’t look hard enough..). This is what I came up with:
TO CREATE A PLAY/PAUSE BUTTON
1. Create a movieclip called “playpause”. Put this movieclip anywhere in your main movie.
2. Create a button in this movieclips first frame, call this button “pause”.
3. Now go to frame two, create a keyframe and another button, call this one “play”.
4. Create another layer, call this layer “script”. Put the marker in the first frame and open Frame Actions. Type in “stop();”. Create another keyframe, and do the same thing again.
5. The buttons need some actionscripting too to be able to work. They need to both make the other button display and to play and pause our movie, which is the main target. I found a way to do this really easily. Click the button “pause”, and open Button Actions. Then type in:
on (release) {
gotoAndStop(2);
_parent.stop();
}
The first line displays the play button, the other one pauses the main movie. Select the other button, “play”, and type in:
on (release) {
gotoAndStop(1);
_parent.play();
}
Save the document, press Command+Enter (PC: CTRL+Enter) and make sure it works.