Это не красиво, но может работать для вас:
<html>
<head>
<title>Whatever</title>
<script type="text/javascript">
function focusThis(This) {
This.className='focus';
}
function blurThis(This) {
This.className='blur';
}
</script>
<style type="text/css">
.focus {
border: 1px dotted black;
}
.blur {
border: 1px solid white;
}
</style>
</head>
<body>
<input id="daffodils" onfocus="focusThis(this);" onblur="blurThis(this);" type="checkbox" title="daffodil factsheet" name="daffodils" value="checkbox" tabindex=2>
<label for="daffodils">Daffodils</label>
<input id="tulips" onfocus="focusThis(this);" onblur="blurThis(this);" type="checkbox" title="tulip factsheet" name="tulips" value="checkbox" tabindex=3>
<label for="tulips">Tulips</label>
</body>
</html>
Обратите внимание на события onfocus
и onblur
в полях ввода.
Если вы открыты для использования библиотеки jQuery, вы можете легко избежать событий onfocus
и onblur
внутри входных тегов, просто добавив и удалив класс focus
:
<html>
<head>
<title>Whatever</title>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('input').focus(function(){
$(this).addClass('focus');
}).blur(function(){
$(this).removeClass('focus');
});
});
</script>
<style type="text/css">
.focus {
border: 1px dotted black;
}
</style>
</head>
<body>
<input id="daffodils" type="checkbox" title="daffodil factsheet" name="daffodils" value="checkbox" tabindex=2>
<label for="daffodils">Daffodils</label>
<input id="tulips" type="checkbox" title="tulip factsheet" name="tulips" value="checkbox" tabindex=3>
<label for="tulips">Tulips</label>
</body>
</html>
Я уверен, что кто-то может написать код JS, чтобы сделать то же самое, но я предпочитаю jQuery.