我想知道我怎麼能有一個按鈕保持其懸停寬度。我想使用css進行轉換,而不是使用jQuery解決方案。將鼠標懸停在按鈕上會顯示不太寬的文本。如何防止更改按鈕寬度?
那麼我該如何做到這一點?如果有純粹的css實現,我會喜歡它,但如果必須的話,我會解決jQuery問題。
編輯:由於按鈕文本是動態的,因此最小寬度將不起作用。
這裏有一個fiddle.
$(function() {
$('button')
.on('mouseover', function() {
$(this).find('.btn-text').toggleClass('hidden');
$(this).find('.options').toggleClass('hidden');
})
.on('mouseout', function() {
$(this).find('.btn-text').toggleClass('hidden');
$(this).find('.options').toggleClass('hidden');
});
});
button {
height: 60px;
padding: 0 25px;
line-height: 60px;
background-size: 100% 200%;
transition: all 0.1s;
background-image: linear-gradient(to top, green 50%, white 50%);
}
button:hover {
color: white;
background-position: 0 100%;
}
.options {
font-size: 13px;
}
.hidden {
display: none;
visibility: hidden;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button type="button">
<span class="btn-text">Button Thing</span>
<span class="options hidden">Go</span>
</button>
這是不可擴展的。答案不應該依賴於按鈕父寬度。 –