• ベストアンサー

XHTMLでのtextareaのwrapの指定方法

仕事で社のHPをXHTML化しています。 DTDによると、XHTMLではtextareaにwrap属性がないようですが、この値を指定するにはどうしたらよいのでしょうか? 希望は「wrap="off"」の状態ですが、デフォルトでは「wrap="soft"」となっているようです。 どなたかお分かりの方おられましたら、よろしくお願いします。

  • mone
  • お礼率70% (80/114)
  • HTML
  • 回答数2
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.2

> 検証サービスでエラーとなるなど以外で何か不都合は? (根拠はありませんが)今のところなさそうですね。 ただ、せっかくのXHTML化ですからちょっと見た目がかわるぐらいで不適合にしてしまうのはもったいない気もしますが。

mone
質問者

お礼

> ちょっと見た目がかわるぐらいで不適合にしてしまうのはもったいない気もしますが。 そうですね、自動改行のあるなし程度は慣れの問題のような気もしますし、とりあえずは適合文書として作成したいと思います。 アドバイスありがとうございました。

その他の回答 (1)

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

wrap="off"は捨てられた模様。(参考URL) スタイルシート(overflow:scrollとかwhite-space:nowrap)を色々書いて試したけどwrap="off"再現できないようですね。 唯一Operaでそれらしい動作になったけど、他のブラウザでは挙動不審になるので下手な指定はできない様子。

参考URL:
http://jp.selfhtml.org/html/formulare/eingabe.htm#bereiche
mone
質問者

お礼

ご回答ありがとうございます。 wrap属性はなくなってしまったんですね。せっかくスクロールできるのに意味がないなんて・・・ ところで、DTDを無視して「wrap="off"」を指定すると、ブラウザ依存ながら希望通りに機能するのですが、このような無効な属性を指定することは、検証サービスでエラーとなるなど以外で何か不都合はあるのでしょうか?

関連するQ&A

  • XHTMLの正しい書き方について質問です。

    WordPressにてHPを作成しています。 出力されたページをAnother HTML-lintでチェックしたところ、XHTML 1.0 Transitionalとして記述しているはずなのですが「HTML4.01 Transitional としてチェックしました。」となり、かなりの数のエラーが検出されてしまいました。 HP作成に関してかなりの初心者でして、何が悪いのかが分かりません。なにとぞご教授下さい。 /* ------------------------------------------------------------ ページソース最初の3行 ------------------------------------------------------------ */ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> /* ------------------------------------------------------------ 最初の3行に対するエラー内容 ------------------------------------------------------------ */ 8: line 1: 最初の記述が DOCTYPE宣言ではありません。 4: line 1: ここに <HTML> が省略されているようです。省略しないようにしましょう。 4: line 1: ここに <HEAD> が省略されているようです。省略しないようにしましょう。 2: line 1: ここに </HEAD> が省略されているとみなします。 9: line 1: <HEAD>~</HEAD> 内には <TITLE> が必要です。 1: line 1: <HEAD> と </HEAD> の間が空です。 4: line 1: <HEAD>~</HEAD> 内に <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="~"> が含まれていません。 4: line 1: ここに <BODY> が省略されているようです。省略しないようにしましょう。 5: line 1: メタ文字 `<` は `&lt;` と書かなければなりません。 5: line 1: メタ文字 `>` は `&gt;` と書かなければなりません。 9: line 2: DOCTYPE宣言は文書の先頭でなければなりません。 2: line 3: <HTML> の前に </BODY> が省略されているとみなします。 9: line 3: <HTML> を 1行目の <HTML>~</HTML> 内に書くことはできません。 5: line 3: <HTML> に他のHTML用の属性 `XMLNS` が指定されています。 5: line 3: <HTML> に他のHTML用の属性 `XML:LANG` が指定されています。

    • ベストアンサー
    • HTML
  • textarea内のname属性について

    ブログスキンをコーディングする仕事をしておりまして 元の部分で下記のような箇所があるのですが <textarea name="comment" rows="10">{コメント記入欄}</textarea> このうち name="comment" が入ると textarea内にcols=""を入れても前後にclass属性を追加して width指定しても横幅が全く効いてくれず困っています。 コメントを記入しているとたまに一瞬幅が伸びるのも気になります。 name="comment"をname="comments"に変えてみたところ、 width指定で横幅が変わったのでシステム内部で 横幅を指定しているとしか思えないのですが うまく検索できず、指定している箇所が出てきません。 もともとname属性もほとんど使用したことがないので この予想もあっているのかよく分かりません。 そこで質問なのですが、 (1)name属性はidやclass同様にcssの装飾ができるのでしょうか (2)(1)でcssが指定できる場合、name属性の  指定側のcssの指定先頭の記号は何でしょうか  (idなら#、classなら.というものです) お手数ですがどうぞよろしくお願い致します。

    • ベストアンサー
    • HTML
  • [textarea要素]FirefoxやIEの挙動

    当方環境IE6 & Firefox[Trunk-バージョン不明] ===========サンプルソース開始================= <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>ほげ</title> </head> <body> <form method="post" action="mailto:hogehoge@example.com?subject=Question"> <fieldset> <legend>ご質問内容</legend> <dl> <dt>内容</dt> <dd><textarea name="Questionare-Content" id="Questionare-Content" rows="10" cols="100" /></dd> </dl> </fieldset> <div id="submitcommand"><input type="submit" name="btnsubmit" value="送信" /></div> </form> </body> </html> ===========サンプルソース終了=========== ■拡張子を.xhtmlとして読み込ませた所、(多分)正常に表示されました。 ■.htmlにして読み込ませたところ、「textareaの内容として「他のタブ含めた文字列」が入っている状態」で認識されてしまいました。 ■なお、IEはこの.xhtmlだと読み込んでくれないので(DTDのパースエラー)拡張子.htmlのみで実験したところ、Firefoxと同様の現象となりました。 確かにXHTML 1.1はtext/htmlはあまり【推奨されていない】ようですが...どこかにこれらの動作について(Firefoxは「違い」について)述べている文書はありますか?

    • ベストアンサー
    • HTML
  • XHTML(XML)

    携帯用のHPを作成しているのですが、説明サイトや本を見ても今一良く解かりません。 そこで(携帯)ホームページ作成ソフトを使ってXHTML(XML)を勉強しようと思っているのですが、ソースがXHTML(XML)で表示されるホームページ作成ソフトってあるのでしょうか? フリーでもシェアでも構いませんし、本を紹介して下さっても構いません。 自分がやりたい事は自分のサーバーから映像(個人撮影)を見せたり、バンドの曲をDLしたいのです。 自分の携帯がauなのでXHTML(XML)で作りたいのです。 追伸・自分が作成したソースですが <?xml version="1.0" encoding="EUC-JP"?> <!DOCTYPE html PUBLIC "-//OPENWAVE//DTD XHTML 1.0//EN" "http://www.openwave.com/DTD/xhtml-basic.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <html> <head> <title>○</title> </head> <body> <object data="XXX.mmf" type="audio/vnd.qcelp" standby="ダウンロード"> <param name="title" value="sound" valuetype="data" /> <param name="size" value="100" valuetype="data" /> <param name="disposition" value="devm39z" valuetype="data" /> </object> </body> </html> で、XXX.mmfは99KBです。

  • XHTMLで新規ウインドウを開くリンク

    XHTML 1.1 でサイトを作成しています。 1.1ではaタグの"target"が禁止になりましたが、新規ウインドウで開きたい場合は、JavaScriptしかないのでしょうか? JavaScriptで作成すると未対応やOFFにしているブラウザでリンクが反応しなくなると思うのですが…。 href属性にURLを指定しつつ、JavaScriptに対応しているブラウザはJavaScriptで新規ウインドウを開くようにするにはどうしたらよいのでしょうか?(なるべく未対応、OFFにも新規ウインドウで開かせたいですが、無理であれば同一ウインドウでもOK) また、何か別の方法がありましたらご教示してください。

    • ベストアンサー
    • HTML
  • Another HTML-lint / WAI。textareaの初期値指定

    素朴な疑問というか、 対策のできない推奨事項だと思いますが、 私の知らない方法があるのかもしれないと思い、質問させてください。 ----------------------- http://openlab.ring.gr.jp/k16/htmllint/explain.html#default-text 文法チェッカーで有名なAnother HTML-lint(WAI)で解説に 「textareaに初期値を指定すべきである」というのがあります。 <input>ではvalue=""で可能ですが、 <textarea>ではタグの中に書くことになりますので、 <textarea></textarea> ですが、これではエラーとして出力されてしまいます。 そこで、初期値として空白を指定したい場合、どのように書くべきでしょうか。 ・HTMLの種類、バージョンは問いません。 ・WAIによると古いブラウザを考慮しているとのことですので、CSS、SCRIPTなどを使わず、HTMLだけで完結できればと思います。 ------------------------- 参考 http://okwave.jp/qa3561084.html 実際の製作ではこのエラーメッセージは無視して「<textarea></textarea>」このように書きますが、 もし、仕事などで「Another HTML-lintでエラーなし」を条件として製作依頼を受けた場合にどうするか、 というのを想定して戴ければ、と思います。 (*私なら、エラーなしは出来ないとしてエラー付きで納品するか、製作そのものを断ります(^^;)

  • TEXTAREAの改行がうまくいきません。

    自作で掲示版を作成している、初心者です。現在作成中の掲示版にTEXTAREAに入力し、LOG上では1行目<BR>2行目といった形で改行をBRに置き換えて保存していますが、その修正としてLOGからデータをとり改行状態で表示させたいのですが、 うまく改行されない状態です。下記にLOGより読み込み。タグを\rに置き換えて いますが、TEXTAREAに表示されなく、改行表示どころではありません。 いったいどうすればよいのでしょうか?ご教示をお願いします。 <CGI文> $wkaaa1 = $IXUSERINF{Enaiyo}; データを取得 $wkaaa =~ &notag1($wkaaa1);  変換(これがおかしい?) $mesbuff .= "<TR><TD nowrap ><TEXTAREA ROW=\"10\" COLS=\"48\" NAME=\"Enaiyo\" WRAP=\"soft\">$wkaaa </TEXTAREA></TD></TR>"; <sub> sub notag1 { local($_) = @_; s/&/&amp;/g; s/"/&quot;/g; s/</&lt;/g; s/>/&gt;/g; s/&lt;br&gt;/\n/gi (これで <BR>を\n(改行)にしてるつもり return $_; }

    • ベストアンサー
    • CGI
  • ホームページをブラウザの中央に表示したい

    作成したHPをブラウザの中央に表示したいのですが 現在は左寄せで表示されてしまいます。 ご存じの方がいらっしゃたら教えてください。 作成ソフトはホームページビルダー13で、 どこでも配置モードです。 DCCTYPEの設定は以下の内容に変更しております。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  • textとtextareaの書式に設定について

    先日、質問をさせて頂きました者になります。 input textとtextareaの書式の設定制御の方法が、 分からなくなってしまい質問をさせて頂きました。 【やりたい事】 textやtextareaの初期値のテキスト色とバックグランの色を、 textやtextareaに初期値が入っている時と入力した値が入っている時に、 指定した書式に各種設定したいと思っています。 具体的には、textやtextareaに初期値が入っている時には、 初期値の文字を薄いグレー色に設定し、バックグランドをピンク色に設定し、 textやtextareaに入力をした値が入っている時には、 入力した文字を黒色に設定し、バックグランドを白色に設定したいと思ってます。 ご教授頂ければと存じます。 よろしくお願いいたします。 【ソース】 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN Frameset" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <script type="text/javascript"> <!--ログ生成スクリプトを取得--> function textoutput(formObj) { <!--text01を取得--> if((text01 = formObj.elements["text01"].value)==formObj.elements["text01"].defaultValue)text01=""; <!--text02を取得--> if((text02 = formObj.elements["text02"].value)==formObj.elements["text02"].defaultValue)text02=""; <!--textarea01を取得--> if((textarea01 = formObj.elements["textarea01"].value)==formObj.elements["textarea01"].defaultValue)textarea01=""; <!--textarea02を取得--> if((textarea02 = formObj.elements["textarea02"].value)==formObj.elements["textarea02"].defaultValue)textarea02=""; <!--出力データを作成--> var text = ''; <!--text3データを作成--> if(text01!==""){ text += '質問1:' + '\n'+ text01 + '\n'; } <!--text2データを作成--> if(text02!==""){ text += '質問2:' + '\n'+ text02 + '\n'; } <!--textarea01データを作成--> if(textarea01!==""){ text += '質問3:' + '\n'+ textarea01 + '\n'; } <!--textarea02データを作成--> if(textarea02!==""){ text += '質問4:' + '\n'+ textarea02 + '\n'; } <!--出力データを作成--> formObj.elements["output"].value=text; } </script> </head> <body> <form name="form01"> <strong>・諮問1:</strong><br> <input type="text" name="text01" value="1入力してください" id="p1" size="30" class="disabled" onfocus="if (this.value == defaultValue) this.value = '';" onblur="if (!this.value) this.value = defaultValue;"><br> <strong>・諮問2:</strong><br> <input type="text" name="text02" value="2入力してください" id="p2" size="30" class="disabled" onfocus="if (this.value == defaultValue) this.value = '';" onblur="if (!this.value) this.value = defaultValue;"><br> <strong>・諮問3:</strong><br> <textarea name="textarea01" id="textarea01" cols="60" rows="5" onfocus="if(this.value == this.defaultValue) this.value=''" onblur="if(this.value == '') this.value=this.defaultValue"> 3入力してください </textarea><br> <strong>・諮問4:</strong><br> <textarea name="textarea02" id="textarea02" cols="60" rows="5" onfocus="if(this.value == this.defaultValue) this.value=''" onblur="if(this.value == '') this.value=this.defaultValue"> 4入力してください </textarea><br> <strong>・出力結果:</strong><br> <input type="button" value="ログ出力" onClick="textoutput(this.form);">&nbsp;<br> <textarea cols=60 rows=20 name="output" id="output"></textarea><br> <textarea id="text" cols="30" rows="5" wrap="soft"></textarea><br> <button onclick="save();">save</button><a id="anchor" href=""></a> </form> </body> </html>

  • textareでの改行

    ホームページ上のtextareaで入力してもらった情報を取得するCGI(perl)スクリプトを書いています。流れとしては,フォーム上で入力した情報をCGIで取得→確認画面を表示→問題無ければメールフォームとして送信,となっています。 このスクリプト上で問題となっているのが,textareaでは自動的に改行処理(wrap=softと同じ?xhtmlで書いているので,wrap属性は指定していません。)するときに入力される改行コードと,入力者が意図的に入力する改行コードを判別出来ないということです。自動的に挿入される\n(0x0A)を削除しようとスクリプト上で, $text =~s/\r\n/\n/g; $text =~s/\r/\n/g; $text =~s/\n//g; と入れたところ,全ての改行コードが変換処理されてしまい,入力者が意図的に入れた改行コードまで処理されてしまいます。 スクリプト上,もしくはxhtmlと組み合わせて,自動的に挿入される改行コードだけを消去して,意図的に入力した改行コードだけを残す処理は出来ないものでしょうか? phpなどを使うと出来るようですが,ある程度perlのcgiで作成してしまったので,このままで出来ればと思っています。よろしくお願いします。

専門家に質問してみよう