《 11:02 公開/更新》
CSSのresizeプロパティを使えば、閲覧者がマウスなどを使って任意のボックスの描画面積を自由に増減させられるようになります。複数行のテキスト入力欄のサイズが可変になっていれば、たくさん入力したい場合などに便利かも知れません。
CSS3で新たに追加されたresizeプロパティを使うと、ボックスの縦横サイズ(表示面積)をユーザが自由に拡大・縮小できるようになります。テキスト入力欄に限らず、p要素やdiv要素みたいなボックスでも自由に変更できるようにできます。
例えば、以下の緑色の線で囲まれたボックスは、p要素で作った「段落」です。
しかし、ボックスの右下をドラッグすることで、表示面積を自在に伸縮できます。
※ただし、IE・Edge・iOS版Safariは除きます。(Firefox、Chrome、Opera、PC版Safariでは動きます。)
このボックスは、p要素(段落)で作っています。この表示面積は、ユーザが自由に伸縮できます。
おそらく、ボックスの右下側に「伸縮可能」であることを示す斜めの二重または三重線などが表示されているのではないかと思います。
そいつをドラッグすると、このボックス(p要素)の表示面積を伸縮できます。
緑色枠の右下端をドラッグしてみて下さい。▲
このように、ボックスの縦横サイズを自由に変更できるようにする方法はとても簡単で、下記のようにresizeプロパティを使うだけです。
CSSソース
対象要素 { resize: both; }
上記のように記述すると、そのボックスの縦横サイズをユーザが自由に伸縮できるようになります。縦横両方ではなく片方だけを可変にしたい場合は、以下のような記述も使えます。
resize: horizontal; /* 幅だけ可変 */
resize: vertical; /* 高さだけ可変 */
resize: none; /* 変更不可 */
なお、resizeプロパティだけでは可変にはできない場合があります。
少なくとも、p要素やdiv要素などのような、元々サイズが不定で、内容に応じて拡張されるようなボックスの場合は、「縦横サイズを固定する」・「スクロールバーを表示する」といった装飾を同時に指定しておく必要があります。
冒頭の例では、以下のようなCSSソースを使いました。
CSSソース
p { border: 2px solid green; width: 300px; height: 200px; overflow: scroll; resize: both; }
冒頭の例は、単に文章を表示するだけの「p要素」に対して適用したものですが、たいていこのプロパティを活用するのは「テキスト入力欄」を作るときでしょうかね。
たくさん情報を詰め込んでいるポータルページのような場所で、各ブロックの表示面積をユーザが自由に決定できるようにしたいときなんかにも使えるかも知れません。(^_^;)
()
(前の記事) « スモールキャップ(先頭は大きな大文字・続く文字は小さな大文字)を作るfont-variantプロパティ
前後のスタイルシート TIPS
< 旧 / 新 >
(次の記事) 文字に陰を付けるCSSの書き方 (ぼかしたり複数の影を同時に指定したり) »
▼当サイト内外で関連しそうな記事などが自動表示されています。(たぶん)