@thebluefox узагальнив найбільше. Ви також змушені використовувати JavaScript, щоб все-таки ця кнопка працювала. Ось SSCCE, ви можете скопіювати'n'paste'n'run:
<!DOCTYPE html>
<html lang="en">
<head>
<title>SO question 2803532</title>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(document).ready(function() {
$('input.deletable').wrap('<span class="deleteicon" />').after($('<span/>').click(function() {
$(this).prev('input').val('').trigger('change').focus();
}));
});
</script>
<style>
span.deleteicon {
position: relative;
}
span.deleteicon span {
position: absolute;
display: block;
top: 5px;
right: 0px;
width: 16px;
height: 16px;
background: url('http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=4') 0 -690px;
cursor: pointer;
}
span.deleteicon input {
padding-right: 16px;
box-sizing: border-box;
}
</style>
</head>
<body>
<input type="text" class="deletable">
</body>
</html>
Живий приклад тут .
jQuery , до речі, не потрібен, він просто добре відокремлює логіку, необхідну для прогресивного вдосконалення від вихідного, ви, звичайно, також можете продовжувати звичайний HTML / CSS / JS:
<!DOCTYPE html>
<html lang="en">
<head>
<title>SO question 2803532, with "plain" HTML/CSS/JS</title>
<style>
span.deleteicon {
position: relative;
}
span.deleteicon span {
position: absolute;
display: block;
top: 5px;
right: 0px;
width: 16px;
height: 16px;
background: url('http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=4') 0 -690px;
cursor: pointer;
}
span.deleteicon input {
padding-right: 16px;
box-sizing: border-box;
}
</style>
</head>
<body>
<span class="deleteicon">
<input type="text">
<span onclick="var input = this.previousSibling; input.value = ''; input.focus();"></span>
</span>
</body>
</html>
Ви закінчуєте лише більш потворний HTML (і JS;), не сумісний із кроссбордсом).
Зауважте, що коли UI look'n'feel не є вашою найбільшою турботою, але функціональність є, тоді просто використовуйте <input type="search">
замість цього <input type="text">
. Він відобразить кнопку (очищення від конкретного браузера) для браузерів, що підтримують HTML5.