html表中的不可选文本?

时间:2010-02-02 15:15:50

标签: asp.net javascript html css

问题:我滥用表作为按钮列表,甚至在每个单元格上使用onclick。
问题是,按钮是缩放按钮,并且反复点击太快(双击)你选择按钮(=表格单元格)文本(即使你不想),这看起来很奇怪。
我可以关掉它吗?我可以在表中创建不可选择的文本吗?

6 个答案:

答案 0 :(得分:5)

回答原始问题...要防止用户突出显示网页上的文字,请应用以下CSS规则:

-moz-user-select:none; -khtml-user-select:none; user-select:none;

答案 1 :(得分:4)

是的,如果你把它做成一个合适的按钮。您可以像设置表格单元格一样设置按钮的样式:

.button {
 background-color:blue;
 color:red;
 border:4px solid green;
}

<input type="button" class="button" value="MyButton" />

如果你想(悔改,罪人!),你仍然可以把它放在一个表中,但至少按一个按钮。 ;)

如果您希望它自动填充表格单元格的宽度,请将按钮设置为display:block;

答案 2 :(得分:1)

添加

style="user-select: none; -moz-user-select: none; -khtml-user-select: none;"    onselectstart="javascript:return false;"

到你的桌子应该做的伎俩

<table id="TableUnselectableExample" style="width: 100%; user-select: none; -moz-user-select: none; -khtml-user-select: none;" onselectstart="javascript:return false;">

所以它是这里提供的解决方案的组合(在IE和FF中工作)

答案 3 :(得分:0)

抱歉,不再相关。

我按照css的方式搜索了它。 但我发现的最好的是 http://www.tek-tips.com/viewthread.cfm?qid=1184318&page=1

事实证明我实际上需要添加一个JS eventhandler:

onselectstart="javascript: return(false);"

以上适用于IE和Chrome。但是,你仍然需要为FireCrap翻译它:

onselectstart="return false;"
onmousedown="if (typeof event.preventDefault != 'undefined') {event.preventDefault();}"

答案 4 :(得分:0)

触发onclick事件时,您可以将焦点设置在TD上 以下是DIV的示例,但同样适用于TD。

<div onclick="clicked(this);">clicks:</div>
<script>
function clicked(div){
    div.innerHTML += '*';
    div.focus();
}
</script>

答案 5 :(得分:0)

我推荐<button>标签。在此处阅读:http://www.w3schools.com/tags/tag_button.asp