限制文本选择区域

时间:2012-09-08 23:37:20

标签: html css selection

开,例如,GitHub,如果你选择代码,它只选择代码而不是旁边的行号:

Text selection limit

这是因为他们使用的是表格 - td中的行号和td中的代码。

如何使用div实现此目标?

编辑:请参阅www.duncannz.com并尝试突出显示文字。我希望选择的东西只能在内容区域内,而不是填充页面的宽度(例如,选择背景不会越过黑色边框)

1 个答案:

答案 0 :(得分:4)

示例:http://jsfiddle.net/gfp28/

<div>

  <ul class='no_select'>
      <li>1</li>
      <li>2</li>
      <li>3</li>
      <li>4</li>
      <li>5</li>
  </ul>

  <ul>
      <li>111111111</li>
      <li>222222222</li>
      <li>333333333</li>
      <li>444444444</li>
      <li>555555555</li>
  </ul>

</div>​

CSS:

ul {
  display: inline; 
  float: left; 
  margin: 10px;
}

.no_select { 
 -webkit-touch-callout: none;
 -webkit-user-select: none;
 -khtml-user-select: none;
 -moz-user-select: none;
 -ms-user-select: none;
 user-select: none;
}

如果将其添加到css中,则应将突出显示限制为容器的宽度:

#actualcontent, #actualcontent * { position: relative; }