【问题标题】:css background color for white text with semi-transparent background image具有半透明背景图像的白色文本的 css 背景颜色
【发布时间】:2012-07-26 04:04:42
【问题描述】:

我会尝试我的第一个问题。

这是一个问题,我遇到过几次,但不知道如何解决:

我有一个半透明的背景图像(例如透明的圆角),它也作为渐变背景颜色。 (在本例中,它是一个下拉导航按钮:当您将鼠标悬停在按钮上时,会出现 nav-list。)

代码如下:

    <div id="top-navi"><a id="top-navi-button" href="#" >Navigation</a>
     <ul>
      <li><a href='#'>bla</a></li>
      <li><a href='#'>blubb</a></li>
     </ul>
    </div>

CSS:

#top-navi {
    position: fixed;
    top: 0px;
    left: 6%;
    z-index: 1000;
}

#top-navi a#top-navi-button {
    float: left;
    width: 130px;
    height: 20px;
    padding: 5px 10px 5px 20px;
    background: url(../img/top-navi-button.png) no-repeat;
    color: #FFF;
    font-size: 120%;
    text-decoration: none;
}
#top-navi a#top-navi-button:hover, 
#top-navi a#top-navi-button:focus {
    text-decoration: underline;
}

按钮上的文字是白色的。 因为我想让网站易于访问,所以我没有将文本放在图像上,而是用 html 编写(以便屏幕阅读器可以阅读)并将其设置为白色。 到这里为止,这一切都很好。

现在,我想让它更易于访问,以便您可以使用所有功能,即使图像已停用。如果我这样做(例如,使用 FF 开发人员工具栏),背景图像会消失,您将无法再看到白色文本。

现在,如果我给链接一个背景色(除了图像),它会覆盖透明的角落。 我还尝试将文本放在&lt;span&gt; 中并给它一个背景色,但由于我的图像有渐变,你会看到跨度的背景色。

任何想法如何解决这个问题? 非常感谢您!

克里斯

【问题讨论】:

    标签: html css accessibility


    【解决方案1】:

    您需要一个额外的图像用于图像的不透明渐变部分。当您将 span 添加到链接时,您可以设置 span 的样式以具有纯色背景后备颜色。

    +------------------------------------------------+
    | a: Gradient and shadow                         |
    | +---------------------------------------------+|
    | | a > span: Solid gradient + background color ||
    | +---------------------------------------------+|
    +------------------------------------------------+
    

    所以,HTML:

    <a id="top-navi-button" href="#"><span>Navigation</span></a>
    

    和 CSS 类似:

    a#top-navi-button {
      background: url(top-navi-button.png) no-repeat;
    }
    
    a#top-navi-button span {
      background: url(top-navi-solid_gradient.png) #00F;
    }
    

    请注意,如果您想创建一个可访问的网站,您还应该考虑提供keyboard navigation。现在您不能使用Tab 键来选择任何菜单项。

    【讨论】:

    • 这就是我想要的!谢谢!也感谢您对键盘导航的评论。我在菜单项中添加了访问键。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 2012-02-29
    • 2012-06-26
    • 2018-02-23
    相关资源
    最近更新 更多