使用 CSS 缩小按钮



我有一个按钮,我想给它一个被按下的外观,除了视觉方面,我想将按钮一直缩小 1px,并保持它的位置。

我对此进行了多次尝试,但似乎无法理解。

有人帮忙吗?

在这里,我制作了一个按钮,该按钮可提供按压效果,并且它会在不移动的情况下缩小一个像素。

我的小提琴

.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;
}

我认为

对于"按下"效果,您可能希望更改填充而不是大小!

喜欢这个:

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

这里有一个jsfiddle。我认为更改填充看起来比调整按钮大小更好,更不用说如果您调整按钮大小,您还可以更改其周围元素的位置,这在页面上看起来很奇怪。

最新更新