当前位置:  开发笔记 > 编程语言 > 正文

谷歌的无形按钮

如何解决《谷歌的无形按钮》经验,为你挑选了7个好方法。

最近有一些关于谷歌新的无图像按钮的文章:

http://stopdesign.com/archive/2009/02/04/recreating-the-button.html

http://stopdesign.com/eg/buttons/3.0/code.html

http://stopdesign.com/eg/buttons/3.1/code.html

http://gmailblog.blogspot.com/2009/02/new-ways-to-label-with-move-to-and-auto.html

我真的很喜欢这些新按钮在Gmail中的工作方式.如何在我的网站上使用这些或类似的按钮?是否有任何具有类似外观和感觉的开源项目?

如果我想使用JQuery/XHTML/CSS滚动我自己的按钮包,我可以使用哪些元素?我最初的想法是:

    用css 标准来改善外观(设计文章主要谈论css/imges涉及.)

    Jquery javascript打开一个自定义对话框,根据"onclick"事件上的按钮,其中包含标签和一个用于过滤的搜索栏?该弹出窗口的表格布局是否合理?

我在网上逆向工程方面很糟糕,我可以使用哪些工具来帮助逆向工程这些按钮?使用Firefox的Web开发人员工具栏我无法真正看到按钮弹出对话框中使用的css或javascript(即使它被缩小).我可以用什么浏览器工具或其他方法来查看它们并获得一些想法?

我不打算窃取谷歌的任何IP,只是想知道如何创建类似的按钮功能.



1> bjtitus..:

- 编辑 - 我没有看到原帖中的链接.抱歉! 将尝试重写以反映实际问题

StopDesign在这里有一个很好的帖子.[edit 20091107]这些作为闭包库的一部分发布:请参阅按钮演示.

基本上,他展示的自定义按钮是使用简单的CSS创建的.

他最初使用9个表来获得效果: 9表

但后来他在顶部和底部边框上使用了一个简单的1px左右边距来达到同样的效果.

使用三层伪造渐变: 按钮渐变

所有代码都可以在Custom Buttons 3.1页面找到.(虽然没有图像的渐变仅适用于Firefox和Safari)

分步说明

1 - 插入以下CSS:

/* Start custom button CSS here
---------------------------------------- */
.btn {
  display:inline-block;
  background:none;
  margin:0;
  padding:3px 0;
  border-width:0;
  overflow:visible;
  font:100%/1.2 Arial,Sans-serif;
  text-decoration:none;
  color:#333;
  }
* html button.btn {
  padding-bottom:1px;
  }
/* Immediately below is a temporary hack to serve the 
   following margin values only to Gecko browsers
   Gecko browsers add an extra 3px of left/right 
   padding to button elements which can't be overriden.
   Thus, we use -3px of left/right margin to overcome this. */
html:not([lang*=""]) button.btn {
  margin:0 -3px;
  }
.btn span {
  background:#f9f9f9;
  z-index:1;
  margin:0;
  padding:3px 0;
  border-left:1px solid #ccc;
  border-right:1px solid #bbb;
  }
* html .btn span {
  padding-top:0;
  }
.btn span span {
  background:none;
  position:relative;
  padding:3px .4em;
  border-width:0;
  border-top:1px solid #ccc;
  border-bottom:1px solid #bbb;
  }
.btn b {
  background:#e3e3e3;
  position:absolute;
  z-index:2;
  bottom:0;
  left:0;
  width:100%;
  overflow:hidden;
  height:40%;
  border-top:3px solid #eee;
  }
* html .btn b {
  top:1px;
  }
.btn u {
  text-decoration:none;
  position:relative;
  z-index:3;
  }

/* pill classes only needed if using pill style buttons ( LEFT | CENTER | RIGHT ) */
button.pill-l span {
  border-right-width:0;
  }
button.pill-l span span {
  border-right:1px solid #ccc;
  }
button.pill-c span {
  border-right-style:none;
  border-left-color:#fff;
  }
button.pill-c span span {
  border-right:1px solid #ccc;
  }
button.pill-r span {
  border-left-color:#fff;
  }

/* only needed if implementing separate hover state for buttons */
.btn:hover span, .btn:hover span span {
  cursor:pointer;
  border-color:#9cf !important;
  color:#000;
  }

/* use if one button should be the 'primary' button */
.primary {
  font-weight:bold;
  color:#000;
  }

2 - 使用下列方式之一调用它(更可以在上面的链接中找到)

 button

要么




2> Sampson..:

根据Firebug的说法,这是他们的"归档"按钮.

 
Archive

CSS不仅仅是我为此组织/粘贴.也许只是我,但是当标记/ css变得如此沉重时,我想我更愿意使用一个图像(或者一些图像作为背景.更好的是,Sprites).此外,此按钮的图像将小于单个K.

尽管我喜欢谷歌,但这似乎有点矫枉过正.


更新: Google是一个独特的案例.如果你是一个庞大的网站,并希望国际化你的内容,那么这种无图像技术实际上非常酷.它允许您将任何书面语言应用于UI,而无需生成新图像,或者害怕破坏按钮.

请参阅问题:使用无图像按钮有什么好处?



3> Ty...:

但是,您决定这样做,请确保首先使用默认值呈现页面:


...然后使用jQuery将输入元素与具有onClick事件的自定义按钮交换.这将确保未启用JavaScript的用户仍可以使用您的网站.

可用性应该是第一位的!


为什么?使用`
推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有