前提
HTMLでセルの値を編集可能な<table>を作成しています。
実現したいこと
➀<input>と<textarea>をセルいっぱいに広げたい(palegreen が見えないくらいにしたい)です。
➁<textarea>を縦にresize可能にしたいです。
発生している問題
➀と②が同時に実現できません。
該当のソースコード
https://jsfiddle.net/r0fw82gx/
html
1<table border="1"> 2 <thead> 3 <tr> 4 <td class="name">name</td> 5 <td class="note">note</td> 6 </tr> 7 </thead> 8 <tbody> 9 <tr class="input_area"> 10 <td class="name"><input type="text"/></td> 11 <td class="note"><textarea></textarea></td> 12 </tr> 13 <tr> 14 <td class="name">鈴木</td> 15 <td class="note">頑張り屋さん</td> 16 </tr> 17 </tbody> 18</table>
css
1table { 2 border-collapse: collapse; 3} 4.input_area td { 5 background: palegreen; 6 position: relative; 7 height: 30px; 8 width: 100px; 9}
試したことA
すぐ思いついたのがこちらのようにabsoluteでいっぱいにする方法ですが、②が実現できません。
https://jsfiddle.net/r0fw82gx/1/
css
1/* 試したことA */ 2.input_area td input, 3.input_area td textarea { 4 position: absolute; 5 inset: 0 0 0 0; 6}
試したことB
上記Aに鑑みて<textarea>をrelativeにする必要があると思いこちらを試しましたが、②が実現できても➀ができません。
https://jsfiddle.net/r0fw82gx/2/
画像のように、縦にrezizeするとpalegreenのエリアが出てきてしまいまうのです。
css
1/* 試したことB */ 2.input_area td input { 3 position: absolute; 4 inset: 0 0 0 0; 5} 6.input_area td textarea { 7 position: relative; 8 height: 100%; 9 width: 100px; 10 max-height: 100%; 11 max-width: 100px; 12}
補足情報(FW/ツールのバージョンなど)
恐れ入りますがCSSのみでの実装が希望です。
宜しくお願い致します。

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/08 06:59
2022/05/08 08:26
2022/05/08 09:20