「Web開発」カテゴリーアーカイブ

marginとpaddingの違い

CSSでスタイルを設定していると「margin」と「padding」の基礎知識が曖昧だと使用する際に混乱しがちなので今回は両者の違いをまとめてみます。

marginとpaddingの関係図

marginの特徴

  • borderの外側にスペース(余白)が設けられる
  • スペース(余白)に背景色は適用不可
  • marginに負数(-5pxなど)が使用可能
  • 隣接した要素と相殺される(されないケースもあります)

paddingの特徴

  • borderの内側にスペース(余白)が設けられる
  • スペース(余白)に背景色を適用可能
  • paddingに負数(-5pxなど)は使用不可
  • 隣接した要素と相殺されない

URLとURIの違い

ホームページのアドレス部分「http://www.~」を指す場合、「URL」と言ったり「URI」と言ったりしてるのを聞いた事がないでしょうか?一体どちらを使用するのが正しいのか疑問に思う方もいらっしゃると思うので整理しておこうかと思います。

URLとは

  • URLは「Uniform Resource Locator」の略称。
  • URLはURIの部分集合。

URIとは

  • URIは「Uniform Resource Identifier」の略称。
  • RFC3986で規定されている。
  • URIはURLとリソース名を示すURN「Uniform Resource Name」を含む言葉。

正式名称を見てみると「URI」、「URL」、「URN」どれもリソースを表していますが、リソースを識別する意味で使用するのなら「URI」を使用すべきです。

エスケープとエンコードの違い

ふとエスケープとエンコードの違いって何だろうと思ったので整理してみました。
どちらも「一定の規則に従い別の記号や文字列に置換する」という点では同義語に見えますが、根本的にその性質は全く異なるものです。

エスケープ

  • HTMLでは「< 」を「&gt;」へ変換することをエスケープ処理と呼称します。この場合、画面上はエスケープしても「

エンコード

  • 情報を暗号や通信に適した形式(コード)に変換すること。動画などの場合、この「形式」のことをコーデックと呼びます。
    例えばURLコードへエンコードすると「半角スペース」は「%20」へ置換されます。そしてURLを見てみるとエンコード後の文字列がそのまま表示されています。

HTTP:GETとPOSTの違い

Web関連の開発をしていると必ずと言っていい程「GET」と「POST」という言葉が出てくるかと思います。
今回はHTTPの「GET」と「POST」の違いについてまとめてみます。

基本事項として

「GET」も「POST」もクライアントPCなどからサーバーに送信するデータ「リクエストパラメーター」を送信する方式となります。

Web開発初心者の方だと「GET」という言葉からサーバーからデータを取得するのかなあと勘違い(私だけ?)してしまうかもしれませんが、どちらも入力フォームのデータをサーバへリクエスト送信する際に使用します。基本的に以下の特徴を踏まえて、用途別に応じて適切に使い分ける必要があります。

GET送信の特徴

  • HTMLの<form>タグの属性に「<form method=”get”>」のように指定して送信します。
  • 「https://write-remember.com?id=abc&data1=123」のようにHTTPリクエストヘッダへリクエストパラメータが付与されます。
    URLの後の「?」がgetパラメータ開始という意味となり、パラメータが複数ある場合は「&」で区切って指定されます。
  • データをリクエストURLの末尾に付与して送信する方式となるため、Webサーバやプロキシサーバのアクセスログなどに残ることになります。
  • 他の人がURLを見ると、入力したデータが丸見えになってしまうリスクがあるので、ログイン画面などではIDやパスワードが他者から丸見えになるのでGET送信は使用するべきではありません。
  • URLの後に付与するのでデータ量(文字数)に制限が掛かる。(Internet Explorer のURLに使用できる最大文字数は最大2,048 文字)
  • GETはHTTPヘッダ情報に含まれるため、簡単に取得することが可能。
  • テキストデータのみ送信可能。

POST送信の特徴

  • HTMLの<form>タグの属性に「<form method=”post”>」のように指定して送信します。
  • HTTPのBODY部にリクエストパラメータが格納されます。
  • GETのようにURLの末尾にパラメータは付与されません。
  • 個人情報などの重要な情報や、データ量が多い場合はPOST送信を使用します。
  • POSTはBODY部分(form)に含まれるため、取得がちょっと面倒。
  • テキスト、バイナリどちらでも送信可能。
  • POST送信後にブラウザの戻るボタン押下で有効期間切れが発生する場合がある。
  • GETのように容易に他者からパラメータはわかりませんが、安全に個人情報を送信する際はPOSTに加えて暗号化などの処置を施す必要があります。

HTML:<br>と<br /> タグの違いとは

HTMLでコーディングしていると、改行コードとして使用する<br>と<br />の違いって何だろうと思った事はないでしょうか。
いきなり結論を言ってしまえば<br>はHTML、<br />はXHTMLでの書式という違いになります。

XHTMLでは以下の様に終了タグ(省略式も可)を必ず記述しなければいけません。

XHTMLでは古いブラウザとの互換性を考慮して、/> の前にはひとつスペースを設けることが推奨されています。

JBossのインストール後にrun.batが実行されない

JBossの起動で少しハマったのでメモしておきます。

JBossのインストール状態

  • 【前提】javaがインストールされていること
  • JBossサイトからzipファイルをダウンロード
  • ダウンロードしたzipファイルを解凍して配置

これだけでJBossのインストールとしては完了となります。
この後に[JBossのホームディレクトリ]\bin\run.batを実行すれば起動するはずなのですが、一瞬コマンドプロンプトの画面が表示されるだけでエラーメッセージも表示せずに即終了してしまい、JBossが起動しないという事象が発生しました。

原因

  • 環境変数「JAVA_HOME」の設定
    「JAVA_HOME」へ「C:\Java\jdk1.6.0_45\bin」と指定していたのが原因でした(「\bin」が余計でした・・・)。
    「C:\Java\jdk1.6.0_45」へ修正したら正常に起動しました。