【问题标题】:CSS - using multiple classes for hover effectCSS - 使用多个类实现悬停效果
【发布时间】:2011-02-01 07:45:23
【问题描述】:

我正在尝试在导航栏的悬停状态中添加一个迷你三角形。

HTML:

        <div id="menu_bars">
            <div id="main_bar">
                <ul>
                    <li class="maintabs maintabs_tri"><a href="#">Over</a></li>
<li class="maintabs maintabs_tri"><a href="#">Collar</a></li>
<li class="maintabs maintabs_tri"><a href="#">Bod</a></li>
                </ul>           
            </div>  

            <div id="css_arrow" class="maintabs_tri"><a href="#"></a>
            </div>
        </div>

'main_bar' div 创建一个水平导航菜单。 div id 'css_arrow' 被用来创建一个将在悬停状态下显示的箭头。 我用一个名为“maintabs_tri”的类对它们进行游戏,其中包括三角形和“main_tab”导航菜单,这样当悬停状态变为活动状态时,三角形就会出现在导航栏上。

CSS:

/* START OF MAIN BAR */
#main_bar ul {
    float: left;
    width: 630px;
    height: 48px;
}

.maintabs {
    display: inline-block;
    width: 25%;
    list-style-type: none;
    background: rgba(237,237,237,1);
    background: -moz-linear-gradient(top, rgba(255,255,255,1), rgba(237,237,237,1)); 
    background: -webkit-gradient(linear, top, bottom, from(rgba(255,255,255,1)), to(rgba(237,237,237,1)));
    -moz-box-shadow: 1px 2px 2px rgba(0,0,0,0.2);
    -webkit-box-shadow: 1px 2px 2px rgba(0,0,0,0.2);
    box-shadow: 1px 2px 2px rgba(0,0,0,0.2);
    -webkit-transition-property: 
}

.maintabs:first-child {
    -webkit-border-top-left-radius: 6px;
    -webkit-border-bottom-left-radius: 6px;
    -moz-border-radius-topleft: 6px;
    -moz-border-radius-bottomleft: 6px;
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px; 
}

.maintabs:last-child {
    -webkit-border-top-right-radius: 6px;
    -webkit-border-bottom-right-radius: 6px;
    -moz-border-radius-topright: 6px;
    -moz-border-radius-bottomright: 6px;
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;        
}

.maintabs a {
    display: block;
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    line-height: 14px;
    text-shadow: 0px 1px 2px rgba(0,0,0,0.3);
    padding: 18px 0px;
}

.maintabs ul {
    display: none;
    list-style-type: none;
}

.maintabs ul li a {
    text-decoration: none;
}
/* END OF MAIN BAR */



/* TRIANGLE ------ for testing, to be used with hover later */
#css_arrow {
    border-color: transparent transparent rgba(111,46,11,0.0) transparent;
    border-style: solid;
    border-width: 8px;
    height: 0;
    width: 0;
    position: absolute;
    top: 34px;
    left: 78px;
}

.maintabs_tri a:hover {
    border-color: transparent transparent rgba(111,46,11,1) transparent;
}

有人可以分享为什么这不起作用吗?我无法弄清楚我的生活......

【问题讨论】:

    标签: css hover


    【解决方案1】:

    添加到 .maintabs_tri a:hover 这个:border-bottom: 3px solid #000 在 Chrome 中修复它。

    问题是没有定义border-widthborder-style

    【讨论】:

    • 三十点,不,没有。问题是悬停效果完全破坏了菜单栏。我正在用更好的措辞重新发布这个问题,并将向您发送链接。非常感谢您抽出时间来做这件事。最好的,
    • 三十点,这里是新帖子的链接:stackoverflow.com/questions/4870912/…
    猜你喜欢
    • 2016-09-21
    • 2015-01-21
    • 1970-01-01
    • 2015-01-01
    • 2021-11-06
    • 1970-01-01
    • 2021-01-10
    • 2018-03-30
    • 2013-08-17
    相关资源
    最近更新 更多