Web ページの 1 行に、長く連続したテキスト (DNA 配列を表す) の断片を表示しています。私は等幅フォントを使用しており、javascript を使用してテキスト内の特定の文字 (20 番目の文字、50 番目の文字など) に DIV を動的に配置したいと考えています。DIV の配置に使用できる座標を計算する最良の方法は何ですか? ブラウザでフォント サイズを変更するユーザーに対して堅牢なソリューションが必要です。
編集:
例として jsfiddle を追加しました: http://jsfiddle.net/kQLqV/以下のコードを追加しました。
例では、たとえば、10 番目から 20 番目の文字の上に青いボックスを配置できるようにしたいと考えています。ボックスをテキスト内の別の場所に移動できるように、JavaScriptでこれを動的に実行できるようにしたいと考えています。各文字をスパンに入れることを考えましたが、最大 1000 文字になる可能性があることを考えると、些細なことのように見えるもののオーバーヘッドが高いように思えました。
<style>
.sequence {
font-family: Courier;
font-size:12px;
width: 70%;
overflow: hidden;
float: left;
position: relative;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<body>
<div id="my_seq" class="sequence">CAGCATCAGCATACGACTACGACGACTCAGCGACTACAGCATACGACGGGSCAAGGTACTGATCATAAATGCATAGACGATAAGACATAGAACGATAAGAGATTACGA...</div>
<script>
$("#my_seq").append("<div style='position:absolute; min-height: 100%; background-color:rgba(30,144,255,0.3); top:0; left:20px; width: 200px;'> </div>");
</script>
</body>