2017-08-08 8 views
4

私はかなり単純なものをしようとしています。私は1から18の値を持つテーブルのテキストの列を持っています。私はテキストを中心にするセルをしたい。ただし、同じセルにアスタリスク(*)を表示する必要があることがあります。アスタリスクが表示されているときは、数字を完全に一列に保ちながら、同じセルの左に揃える必要があります。divセルを一度中央に置かれたテーブルセル内で整列する

することは、私はかなりそれだけでアスタリスクとdivposition: absoluteを与える正しい方法

<table border=1> 
 
    <tr> 
 
    <td style="text-align:center" width=50> 
 
     <div> 
 
     <div style="float:left;">*</div> 
 
     <div>14</div> 
 
     </div> 
 
    </td> 
 
    </tr> 
 
    <tr> 
 
    <td align=center> 
 
     <div></div> 
 
     <div>16</div> 
 
    </td> 
 
    </tr> 
 
</table>

+0

「td」をアスタリスクで区切ることができないのはなぜですか? –

+0

@ VadimOvchinnikovそのため、他の列全体が接しているためです。 – Don

+0

@Donこの 'td'の枠線を削除し、CSSを使って他の' td'の枠線を適用することができます。 –

答えて

7

を揃えるために得ることができない、とあなたの数字は、常に適切にセンタリングされます。

<table border=1> 
 
    <tr> 
 
    <td style="text-align:center" width=50> 
 
     <div> 
 
     <div style="position: absolute;">*</div> 
 
     <div>14</div> 
 
     </div> 
 
    </td> 
 
    </tr> 
 
    <tr> 
 
    <td align=center> 
 
     <div></div> 
 
     <div>16</div> 
 
    </td> 
 
    </tr> 
 
</table>

この場合、position: absoluteは次のように伝えています。「絶対配置されたとは思わないdivの寸法」。 divを番号で調べると、アスタリスクがDOMにないdivのように、親要素の全幅と高さが表示されます。

私の説明はちょっと貧弱で100%正確ではないかもしれませんが、それはあなたに基本的な理解を与えるはずです。詳細については、このサイトまたは他の場所の「位置:絶対」のエリアを参照してください。https://www.w3schools.com/css/css_positioning.asp

+0

@commercial_suicide、それは最高です。もう一つ複雑です。時にはCPを追加するような数字の右側にあるテキストにも同じことをしたいのであれば、同じことをすることはできません。私は位置を絶対にしようとしました:別のdivの0、しかしそれはテーブルの外に置きます。 https://jsfiddle.net/pixelwiz/h5qz0njo/1/ – pixelwiz

+0

@pixelwizでは、親の 'div'に対して' position:relative'を設定する必要があり、絶対的に位置する子は親に対して相対的に配置されます。ここで働いているjsfiddle:https://jsfiddle.net/h5qz0njo/2/ –

関連する問題