css - 如何使用 CSS 获取类似样式的 Google 菜单按钮

标签 css

Google 在他们的网络服务中实现了一个非常简洁优雅的标签系统导航方式,给我留下了深刻的印象。下面是一张来自谷歌日历的图片。

Menu

我认为这可以使用纯 CSS 来实现。例如,假设我有这样的菜单;

<div class="menu">
  <div class="item">item1</div>
  <div class="item">item2</div>
  <div class="item">item3</div>
  <div class="item">item4</div>
</div>

我怎样才能使用 CSS 实现类似的外观(带/不带图像)。

最佳答案

您可以使用开发人员工具(Firefox 中的 Chrome/IE/Firebug)来检查页面并确切地了解他们是如何做的。

我从 jsFiddle 开始,只是通过复制那些特定按钮的代码,并掌握 CSS 规则。显然我遗漏了一些,因为它们看起来并不完全相同,但是当您添加更多规则时,您可以准确地看到它们为实现该结果所做的工作。

您可以直接从 Chrome 右侧的“样式”选项卡复制整个 CSS 规则。

http://jsfiddle.net/XLd3R/

.goog-inline-block {
    position: relative;
    display: -moz-inline-box;
    display: inline-block;
}
.trans-strip {
    background: -webkit-linear-gradient(right, rgba(255, 255, 255, 1.0), rgba(255, 255, 255, .5));
    background: -moz-linear-gradient(right, rgba(255, 255, 255, 1.0), rgba(255, 255, 255, .5));
}
.button-strip {
    white-space: nowrap;
}
.goog-imageless-button-collapse-right {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    margin-right: -1px;
    -webkit-border-bottom-right-radius: 0;
    -webkit-border-top-right-radius: 0;
    -moz-border-radius-bottomright: 0;
    -moz-border-radius-topright: 0;
}
.goog-imageless-button, .navbuttonouter {
    background: #f5f5f5;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#f1f1f1));
    background-image: -webkit-linear-gradient(top, #f5f5f5, #f1f1f1);
    background-image: -moz-linear-gradient(top, #f5f5f5, #f1f1f1);
    background-image: -ms-linear-gradient(top, #f5f5f5, #f1f1f1);
    background-image: -o-linear-gradient(top, #f5f5f5, #f1f1f1);
    background-image: linear-gradient(top, #f5f5f5, #f1f1f1);
    border: 1px solid #dcdcdc;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    color: #444;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    height: 27px;
    line-height: 27px;
    min-width: 54px;
    outline: none;
    padding: 0 8px;
    text-align: center;
    transition: all .218s;
    -moz-border-radius: 2px;
    -moz-transition: all .218s;
    -moz-user-select: none;
    -o-transition: all .218s;
    -webkit-border-radius: 2px;
    -webkit-transition: all .218s;
    -webkit-user-select: none;
}
.goog-imageless-button, .navbuttonouter {
    color: #444;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    line-height: 27px;
    text-align: center;
}

关于css - 如何使用 CSS 获取类似样式的 Google 菜单按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15422518/

相关文章:

jquery - 将鼠标悬停在 WordPress 页面列表中的元素上会显示特色图片

html - CSS3 动画,不太正确

html - PHP 数据库结果相互堆叠

html - Bootstrap - 如何将列高设置为多行?

html - 强制表格内的表格填充剩余的屏幕高度

css - 如何在拉伸(stretch)div后强制出现div

javascript - 带有复选框 hack 的下拉列表 - 如何在不选择选项的情况下首次点击打开菜单?

html - 在悬停另一个元素时更改 SVG 填充颜色

javascript - bootstrap aside 在小型设备上隐藏分页元素

php - 创建一个与团队见面的页面,想要按降序排列,每个级别到新行