按下表单提交按钮移动

时间:2013-06-14 02:49:55

标签: html css

我在基本表单上遇到了提交按钮的问题。单击时,该按钮在Firefox中移动。按钮略微向上移动几个像素。该页面可在http://www.jmtalbott.com/contact.html查看。有人知道如何解决这个问题吗?

HTML

<form id="form" method="post" action="http://example.com/processform/">
<p>Name</p>
    <input type="text" name="name"/>
<p>Email Address</p>
    <input type="text" name="email"/>
<p>Message</p>
    <textarea name="comments" rows="15" cols="38"></textarea></p>
<p></p>
<input class="button" value="Send" type="submit"/>
</form> 

CSS

#form {
font-size: .8em;
margin: 0 auto;
padding: 10px 0px 40px 25px;
width: 385px;
height: 400px;
position: absolute;
top: 190px;
left: 290px;
box-shadow: -4px -6px 8px 2px rgba(225,229,232,.5),
            8px 6px 12px rgba(225,229,232,.5);
}
#form p {
padding: 15px 0 5px 0;
}
.button {
-moz-box-shadow:inset 0px 1px 0px 0px #bbdaf7;
-webkit-box-shadow:inset 0px 1px 0px 0px #bbdaf7;
box-shadow:inset 0px 1px 0px 0px #bbdaf7;
background:-webkit-gradient( linear, left top, left bottom, 
    color-stop(0.05,    #79bbff) color-stop(1, #378de5) );
background:-moz-linear-gradient( center top, #79bbff 5%, #378de5 100% );
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#79bbff',    endColorstr='#378de5');
background-color:#79bbff;
-moz-border-radius:6px;
-webkit-border-radius:6px; 
border:1px solid #84bbf3;
display:inline-block;
color:#ffffff;
font-family:Arial;
font-size:15px;
font-weight:bold;
padding:6px 24px;
text-decoration:none;
text-shadow:1px 1px 0px #528ecc;
position: absolute;
top: 470px;
left: 2px;
}
.button:hover {
background:-webkit-gradient( linear, left top, left bottom, 
    color-stop(0.05,  #378de5), color-stop(1, #79bbff) );
background:-moz-linear-gradient( center top, #378de5 5%, #79bbff 100% );
filter:progid:DXImageTransform.Microsoft.gradient
   (startColorstr='#378de5', endColorstr='#79bbff');
background-color:#378de5;
}
.button:active {
position:relative;
top:1px;
}

1 个答案:

答案 0 :(得分:2)

问题是.button绝对处于非悬停状态。

button:hover上,定位更改为相对,完全更改 它的位置。

快速解决方法是删除以下内容:

.button:active {
   position:relative;
   top:1px;
 }

<强> PS

写这篇文章需要更长的时间,而不是解决问题......