0

視覚的な側面とは別に、押されたように見せたいボタンがあります。ボタンを 1px 縮小し、その位置を維持したいと思います。

私はこれに何度も行きましたが、それを理解することはできません。

誰か助けて?

4

2 に答える 2

2

ここでは、Press効果を与えるだけでなく、移動せずに 1 ピクセルずつ縮小するボタンを作成しました。

私のフィドル

HTML:

<input type="button" class="demo" value="Press Me" />​

CSS:

.demo {
   background: #f5f5f5; /* Old browsers */
   background: -moz-linear-gradient(top,  #f5f5f5 0%, #dddddd 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f5f5f5), color-stop(100%,#dddddd)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top,  #f5f5f5 0%,#dddddd 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top,  #f5f5f5 0%,#dddddd 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(top,  #f5f5f5 0%,#dddddd 100%); /* IE10+ */
   background: linear-gradient(to bottom,  #f5f5f5 0%,#dddddd 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#dddddd',GradientType=0 ); /* IE6-9 */
   border: 1px solid #dddddd;
   padding: 5px;
   font-size: 18px;
   margin: 20px;
   cursor: pointer;
}

.demo:active {
   background: #dddddd; /* Old browsers */
   background: -moz-linear-gradient(top,  #dddddd 0%, #f5f5f5 99%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dddddd), color-stop(99%,#f5f5f5)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top,  #dddddd 0%,#f5f5f5 99%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top,  #dddddd 0%,#f5f5f5 99%); /* Opera 11.10+ */
   background: -ms-linear-gradient(top,  #dddddd 0%,#f5f5f5 99%); /* IE10+ */
   background: linear-gradient(to bottom,  #dddddd 0%,#f5f5f5 99%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#f5f5f5',GradientType=0 ); /* IE6-9 */
   border: 1px solid transparent;
}

</p>

于 2012-10-13T13:12:12.177 に答える
1

「押された」効果のために、サイズの代わりにパディングを変更したいと思うかもしれません!

このような:

.MyButton {
    margin:10px 10px;    
    line-height:14px;
    font-size:14px;
    text-align:center;
    padding:3px 5px;
}

.MyButton:active {
    padding:3px 4px 3px 6px;
}

ここでjsfiddleを使用します。パディングの変更は、ボタンのサイズを変更するよりも見栄えが良いと思います。ボタンのサイズを変更すると、その周りの要素の位置も変更される可能性があり、ページ上で奇妙に見えることは言うまでもありません.

于 2012-10-13T13:15:46.547 に答える