The position CSS property was my friend today, along with it’s co-conspirator, z-index. It helped me out with a situation where I have a footer which extends upward into the content area (a web-2.0-ish gradient to white) and the content partly overlaps. IE was as usual being contrary, displaying the footer on top of the text while every other browser had the footer behind it (The real irony here is IE’s behavior seems to be more “correct”, as the footer comes after the content in the HTML).
Giving position and suitable z-index values to the footer and content allowed the page to appear the way I wanted it to.
There’s a great writeup of these CSS properties titled “Give Me Some Zzzzz’s“) which by coincidence showed up today in one of my RSS feeds.
Especially useful was the note about how position works, and what an absolute positioned element is positioned in relation to.
Another byproduct of adding position:relative to an element is that the element now becomes the “containing block” for further positioned elements. This would allow you to define absolutely placed elements in relation to that newly created stacking context. The “containing block” of an element is defined as the nearest ancestor that has a value set for the property “position” other than static (e.g. the parent should be position:relative or position:absolute or position:fixed). If no parent exists then the containing block becomes the root element which is the HTML (or body outside of margins set), which effectively means the viewport.
Making a block position:relative has no impact on positioning (unless you specify top, left, bottom or right also).








If you allow your customers to contact you…
These days, your company, large or small, is nothing unless it has a web presence of some sort. Sometimes that web page is so badly done that it may be worse than having no page at all, but 21st century wisdom would suggest that having an online presence has become almost an essential part of marketing your business, even if you’re strictly a “bricks-and-mortar” operation.
One of the major advantages is being able to not only provide contact information for people who want to reach you, but also to provide a channel for direct contact by email or even instant messaging. What could be more powerful than giving customers a way to ask you something and receive a quick reply, without having to call and then sit around waiting for the next available representative?
With great power comes great responsibility, however. What could be more off-putting and damaging to your brand than having people email you a simple question and never receive a response at all? If you called a business and nobody ever picked up the phone, how long would you keep trying before you took your custom elsewhere? The same applies to email.
On Monday afternoon I emailed a large, UK-based company I have an account with, asking a very simple question. I chose email because I don’t much feel like waiting for snail-mail to reach them, or paying international call rates to listen to muzak for some unspecified period of time while someone in India handles all the calls that are in front of me just so I can then spend about 2 minutes talking to them.
One and a half business days later, and surprise! No reply. Not even a “thank you for your email, we’re on it”. I know they’re a large company, and probably get massive numbers of queries, but really, it was a simple question and should not have taken anyone too long to answer. So, I have to assume they either ignore email, or have so few staff tasked to deal with it that they have a multi-day backlog just to read the things.
If your business is going to accept email from customers, you’d better also put in place the resources needed to handle it in a timely manner. If you cannot do that, then don’t even bother with the email contact thing, you’re just going to do more harm than good to your hard-earned brand reputation.
Oh, and while I’m on a roll here, when your answering machine, sales staff or whoever asks me to leave my name and phone number, and promises that I’ll be called back, how about being courteous enough to actually do that? It’s just the same as the email problem, if you don’t bother to return a call then the least rude of your competitors is likely to receive my custom instead.