css 文本框聚焦时如何控制无边框

html-css021

css 文本框聚焦时如何控制无边框,第1张

具体实现代码如下:

var inputO = document.getElementById("input1")

inputO.onblur = function()

{

inputO.style.border = "1px solid rgb(0, 0, 0)"//input失去焦点时的边框状态

}

inputO.onfocus = function()

{

inputO.style.border = 0//input得到焦点时的边框状态

}

分析问题:

文本框获取焦点时,浏览器给采用默认的处理方式,为其加上高亮外边框。

解决思路:

我们可能通过,在input获取焦点时,采用css将文本框的外边框去掉。为文本框添加如下样式即可。

outline:none

样式代码:

input:focus {outline:none}

下面给出一个完成的示例代码:

<html>

<head>

<style>

form{background-color : #FF00F1Fheight:50pxpadding : 15px}

.inputStyle, .inputStyle:focus {outline:none}

</style>

</head>

<body>

<div id="dh2">

<form>

<input type="text"  class="inputStyle"/>

<input type="text" />

</form>

</div>

</body>

</html>

CSS :focus

:focus 选择器用于选取获得焦点的元素。

提示:接收键盘事件或其他用户输入的元素都允许 :focus 选择器。

所有主流浏览器都支持 :focus 选择器。

注释:如果 :focus 用于 IE8 ,则必须声明 <!DOCTYPE>。

<html>

<head>

<style>

input:focus

{

background-color:yellow

}

</style>

</head>

<body>

<p>在文本框中点击,您会看到黄色的背景:</p>

<form>

First name: <input type="text" name="firstname" /><br>

Last name: <input type="text" name="lastname" />

</form>

</body>

</html>