自定义下划线图像的CSS3过渡

时间:2013-07-09 22:51:01

标签: class css3 opacity transitions underline

嗨朋友们我正在寻找一个严格的CSS3修复程序,用于使用背景图像并嵌套在导航列表中的自定义下划线上的不透明度过渡。我意识到经过一些研究表明当前不支持背景图像转换,因此我尝试使用伪类构建不透明度转换:在此之前,我相信目前可以在最新版本的Chrome和Firefox中使用。任何人都可以提供的任何帮助都会非常感激,我在网上到处都找不到任何试图在自定义下划线背景图像上执行转换的人,所以希望它可以防止对某人有一个小小的挑战?

这是我目前的代码:

.sf-menu, .sf-menu * {
margin:0 auto;
padding:0;
list-style: none;}


.sf-menu {
float: left;
margin-left:27%;}


ul.sf-menu li {
position:relative;
line-height:40%;
margin-left:10px;
margin-right:10px;}


ul.sf-menu > li {
float: left;}


ul.sf-menu li {
white-space: nowrap; /* no need for Supersubs plugin */
*white-space: normal; /* ...unless you support IE7 (let it wrap) */ }  


ul.sf-menu li:hover > a {
background: url(../images/UNDERLINE.png) repeat-x 100% 100%;
-webkit-opacity:1;
-moz-opacity: 1;
opacity: 1;
-webkit-transition: opacity 1s;
-moz-transition: opacity 1s;
-ms-transition: opacity 1s;
-o-transition: opacity 1s;
transition: opacity 1s;}


ul.sf-menu li:before  {
content:"";
position:absolute;
z-index:-1;
top:0;
bottom:0;
left:0;
right:0;
background: url(../images/UNDERLINE.png) repeat-x 100% 100%;
-webkit-opacity: 0.1;
-moz-opacity: 0.1;
opacity: 0.1;}`

您还可以在www.mdwoodman.co.uk找到我网站的当前框架

提前致谢!

1 个答案:

答案 0 :(得分:0)

您可以使用CSS边框替换背景图像并进行转换,这里是您网站的近似值:

ul li a {
    color: white;
    text-decoration: none;
    font: bold 15px/150% sans-serif;
    text-transform: uppercase;
    padding: 2px 5px;
    border-bottom: solid #384740 3px;
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

ul li a:hover {
    color: #BDE2DF;
    border-bottom-color: #66FFB2;
}

要转换边框颜色,您可以抓取计算颜色,也可以在rgbahsla中说明颜色,例如......

ul li a       { border-bottom: solid rgba(102, 255, 178, 0.1); }
ul li a:hover { border-bottom: solid rgba(102, 255, 178, 1.0); }

http://jsfiddle.net/de9wT/