- ベストアンサー
HTMLでタイムスケジュールを作成しています。
- HTMLでタイムスケジュールを作成する際に、横スクロールの表示とブラウザの横スクロールの非使用を試みていますが、レイアウトが崩れる問題が発生しています。
- タイムスケジュールの1分単位での表示について、適切な間隔を設定したいと考えています。
- 現在作成中のHTMLの一部を省略して掲載しました。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
先日の回答者です。 なるほど、そんな風に作りましたか。。。 そもそも外枠の<tr>が無いですね。 それは置いといて、検証はしていませんが、 <td></td>が空要素だからかもしれませんし、 全<td>を計算しながら分刻みでwidthで設定すると綺麗になるかも。 tableの場合は、ブラウザによってセルがコンテンツに合わせて収縮するから幅を設定しないとお任せ状態になるって事です。 CSSで指定した方が早いですよ。 でも、分に数字?を入力するつもりなら、今後、また崩れるでしょうね。 (分に対しての時間の割合が合わなくなるから) 分の 1~3px 内に入力するのも困難ですよね? 分の部分をどんな風に表示したいのかわかりませんが、 分をセルで設定せずに、 セルを時間毎で区切り、 縦に分感覚で分けた縦線デザインの背景画像を設置したほうが良いかもしれません。 ローカルのみで使うなら、スペーサーなどを設定したり非表示対応でも良いでしょうが。 今回の場合は、 意図する通りに表示出来ないなどという事は無いでしょう。 (細かい表示関連はCSSで設定しましょう)
その他の回答 (1)
- gogoshingo
- ベストアンサー率66% (2/3)
<td colspan="100" bgcolor="lightpink" height="50">未</td> のように colspanで連結した場合、widthをきっちり指定しないと表示が崩れます。 また、<td bgcolor="lightblue"></td> のように空セルがある場合、 <td bgcolor="lightblue"> </td> とスペースを入れた方がよいです。 個人的には、スケジュール部分のセルはテーブルで区分けせず、 <div>で帯を作成した方が調整しやすい気がします。 <td><div class="lightpink" style="width:300px">未</div><div class="lightblue" style="width:3px"></div>~<div class="lightgreen" style="width:70px">仕</div></td>
お礼
ご回答ありがとうございます。 ご指摘のとおり空セルがあると微妙にズレてしまいましたが で整えるとキレイに表示されました。 この帯で作成する方法を試してみたのですが、 classはcssで定義するのですよね? 指定するのは色や高さなどで良いのでしょうか?
お礼
ご回答ありがとうございます。 CSSでwidthを設定し、スケジュールを固定することができました。 さすがに3pxとかは無理でしたので、スケジュールに表示する文字を考慮し30pxとりました。 ただ、colspanでセルを連結し、 align="center"で文字を中央にしようとしましたが、 なぜか連結した真ん中ではなく一番左端のセルの真ん中に表示されてしまいます。 widthを指定した状態でcolspanで連結してしまうと このような現象になってしまうのでしょうか?