我有一个导航栏,但想要添加图像,因此导航栏不是文本链接,而是由图像和具有悬停效果等的文本组成的按钮组成。
但由于一些链接名称是动态的,我无法在photoshop中制作按钮,因此想知道如何在html和css中制作这种类型的导航栏。
有什么想法吗?
EDIT 为了澄清我有以下图像sample nav button
并希望在此下方添加文字以形成导航栏上的按钮,如果这样可以更清晰。
答案 0 :(得分:0)
你可以用CSS做很多事情
基本思想是使用伪类.cssclass:hover
更改按钮的每个状态的属性以将鼠标悬停在状态上,并将.cssclass:active
更改为鼠标按下。
的正常强>
/* style of the button in normal state */
button.css3button{
padding: 0.5em;
background-color: lightblue;
border: 4px outset green;
color: green;
border-radius: 4px;
}
的:悬停强>
/* properties that change when mouse over */
button.css3button:hover {
background-color: lightgreen;
}
的:活性强>
/* properties that change when mouse down */
button.css3button:active {
color: yellow;
border: 4px inset red;
}
现场演示:JSFIDDLE
使用CSS3的更复杂的样式示例:
<button type="button" name="" value="" class="css3button">submit</button>
button.css3button {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
color: #ffffff;
padding: 10px 20px;
background: -moz-linear-gradient(
top,
#bfc2ff 0%,
#82b4ff 25%,
#4664fa);
background: -webkit-gradient(
linear, left top, left bottom,
from(#bfc2ff),
color-stop(0.25, #82b4ff),
to(#4664fa));
-moz-border-radius: 30px;
-webkit-border-radius: 30px;
border-radius: 30px;
border: 3px solid #ffffff;
-moz-box-shadow:
0px 3px 11px rgba(000,000,000,0.5),
inset 0px 0px 1px rgba(49,141,212,1);
-webkit-box-shadow:
0px 3px 11px rgba(000,000,000,0.5),
inset 0px 0px 1px rgba(49,141,212,1);
box-shadow:
0px 3px 11px rgba(000,000,000,0.5),
inset 0px 0px 1px rgba(49,141,212,1);
text-shadow:
0px -1px 0px rgba(000,000,000,0.2),
0px 1px 0px rgba(255,255,255,0.3);
}
演示:JSFIDDLE
你可以根据自己的喜好改变每个州:hover
:active
:visited
的尺寸,颜色,渐变,你几乎可以设置任何样式<a> <span> <div> <button>
答案 1 :(得分:0)
这个问题并不适合这个论坛。这是针对特定问题,而不是基本教程。你可以通过一个简单的谷歌搜索找到很多很好的教程,它们将引导你完成基本的CSS以及如何实现这一目标。
但是为了让你开始,你可以这样做:http://jsfiddle.net/wgBTZ/
<强> HTML:强>
<ul>
<li><a href="#" >One</a></li>
<li><a href="#" >Two</a></li>
<li><a href="#" >Three</a></li>
<li><a href="#" >Four</a></li>
</ul>
<强> CSS:强>
li {
float:left;
width: 100px;
height: 40px;
background:#CCC;
margin:0 0 0 15px;
}
a {
color: black;
text-decoration:none;
float:left;
width: 100px;
height: 40px;
background:#CCC;
}
a:hover {
background:#000;
color:white
}
编辑:这只是基本的机制。使用CSS3,你可以采取我上面所做的,并实际构建一些非常酷的东西。