5

我想知道是否(以及如何)一些如下图所示的文本阴影是可能的:

在此处输入图像描述

阴影在几个列表元素上减少。我想根据悬停在哪个元素上为每个元素赋予不同的悬停类,但我什至不确定如何使用 CSS 获得这种减少的阴影。如果有人能够教我如何做到这一点,那就太酷了。如果你愿意,你可以使用我的jsfiddle代码。

4

2 回答 2

7

你可以试试这样的

演示

(单击选项卡将其选中并查看阴影)

并使用box-shadow所选选项卡的伪元素获得效果。

应该看起来像这样

win 7 上的 chrome 21

HTML

<ul class='tabs'>
    <li><a href='#' tabindex='1'>1st tab</a></li>
    <!-- as many tabs as you would like -->
    <li><a href='#' tabindex='1'>aaand another tab</a></li>
</ul>

相关CSS

.tabs { overflow: hidden; margin-top: 7em; list-style: none; }
.tabs li { float: left; border-right: 1px dotted #222; }
.tabs a {
    display: block;
    position: relative;
    padding: 1em .66em;
    font: .66em/1.1 sans-serif;
    text-transform: uppercase;
    text-decoration: none;
}
.tabs a:focus {
    z-index: 3;
    outline: none;
    box-shadow: 0 -.5em 1.5em black;
    background: lemonchiffon;
}
.tabs a:focus:before, .tabs a:focus:after {
    position: absolute;
    bottom: -1px;
    width: 30em; height: 1px;
    box-shadow: 0 0 20px 1px black;
    content: '';
}
.tabs a:before {
    left: -30.5em;
    transform: rotate(-3deg);
    transform-origin: 100% 100%;
}
.tabs a:after {
    right: -30.5em;
    transform: rotate(3deg);
    transform-origin: 0 100%;
}
于 2012-09-25T08:58:02.060 回答
1

您可以增加 an<li>以使其位于 的整个宽度内<ul>,旋转它并给它一个阴影..

HTML:

    ...
    </li>
        <li class="shadow">1</li>
    </ul>

CSS:

ul
{
    overflow: hidden;
    height: 50px;
}

li.shadow
{
    width: 100%;
    height: 100%;
    position: relative;
    top: 15px;
    box-shadow: 0px 0px 45px #000;
    -webkit-transform:rotate(-1deg);
}

​</p>

http://jsfiddle.net/Kyle_Sevenoaks/4Luet/1/

于 2012-09-25T08:55:28.313 回答