在Firefox和Chrome中,仅当该字段具有焦点时才显示文本字段的文本选择(=在该字段中选择的文本范围)。即使该字段没有焦点,该选择也确实存在-可以从JavaScript查询,并且如果该字段以不改变选择的方式重新获得焦点,则该选择再次变为可见-但是,用户看不到它。 (请参见下面的示例代码片段。在<textarea>字段中突出显示所需的任何文本;然后使用Tab和Shift + Tab移开和移开焦点。只有当该字段具有焦点时,您的文本才会显示为选中状态。)

有没有方法可以覆盖此行为?

一些注意事项:


我尝试使用CSS's ::selection pseudo-element和规则来设置颜色和背景色,但这没有帮助;只有在该领域成为重点时才应用这些规则。
我宁愿只使用HTML / CSS / JavaScript(无需用户干预)来完成此操作,但是如果需要,我愿意使用浏览器设置。
我不在乎选择是否在没有焦点的情况下看起来与在焦点情况下一样,只要在两种情况下都可见即可。
我主要需要支持Firefox,但如果可能的话,我也希望支持其他现代浏览器。
我不在乎选择的长度为零时是否表示选择(=当它只是一个光标位置时)。




<textarea rows="2" cols="15">Hello, world!</textarea>

最佳答案

您是否尝试在CSS中为Firefox使用特定的选择元素?看起来该元素仅以这种方式在Firefox中实现(此后版本2-61已修复):

::-moz-selection {

}

07-24 17:44
查看更多