2012年6月29日星期五

如何利用CSS创建一个漂亮的按钮

这个教程将教你如何使用CSS创造一个漂亮的动态按钮 ,所谓动态,指的是默认状态和聚焦状态时背景按钮图片不一样,让我们看一下这是怎么完成的:

sexy button snap3 如何利用CSS创建一个漂亮的按钮

滑动门

因为我们希望我们的按钮是灵活的,我们将要作出的背景图像,可以文本自动改变大小。对于这一点,我们就用心爱的滑动门技术;两个互补图片所创造出来的幻觉,一个默认的,一个点击时出现的。

我们的按钮,将是一个基本的标签嵌套<a>和<span> ,然后给每一个不同的层指定不同的背景图像。下面是html代码:

<a href=”#” class=”button”><span>Bring world peace</span></a>

接着,我们需要的是两张清晰的背景图片,分别使用在默认和聚焦状态下面:

sexy button snap4 如何利用CSS创建一个漂亮的按钮

我们将用这两张图片在CSS下面达到按钮的变幻效果,而不需要使用任何javascript。背景图片应该设置一个合理的高度和宽度。比如这里,我们设定宽为300px,高为24px。

下面是分别是和的背景图片。
SPAN
bg button span 如何利用CSS创建一个漂亮的按钮
A
bg button a 如何利用CSS创建一个漂亮的按钮

样式化按钮

最后,我们需要一个CSS对按钮进行样式化 ,使这一切都联系在一起。因为我们要在此过程中,要对span和a元素增加到浮动属性,所以,我们对整下样式进行一个清除浮动:

.clear { /* generic container (i.e. div) for floating buttons */overflow: hidden;width: 100%;}a.button {

background: transparent url('bg_button_a.gif') no-repeat scroll top right;

color: #444;

display: block;

float: left;

font: normal 12px arial, sans-serif;

height: 24px;

margin-right: 6px;

padding-right: 18px; /* sliding doors padding */

text-decoration: none;

}

a.button span {

background: transparent url('bg_button_span.gif') no-repeat;

display: block;

line-height: 14px;

padding: 5px 0 5px 18px;

}

我们现在已经有了一个漂亮的按钮,但他还没有达到聚焦时所需要的转换效果,所以,我们还需要加入:

a.button:active {background-position: bottom right;color: #000;outline: none; /* hide dotted outline in firefox */

}a.button:active span {

background-position: bottom left;

padding: 6px 0 4px 18px; /* push text down 1px */

}

OK,大功告成。但需要注意的是,光靠上面的方法,不能正常运行于IE浏览器下面,所以,要让他在IE上也能工作,你需要在a标签里使用到:

<a href=”#” onclick=”this.blur();” class=”button”> … </a>

翻译的不是太流畅,早知道的话用自己的话解释了。如果上面的看不明白,你可以点击这里查看英文原文教程:How to make sexy buttons with CSS

来源于 如何利用CSS创建一个漂亮的按钮 | 帕兰映像

没有评论:

发表评论