ウェブサイトの書き方
「東京高専プロコンゼミ① Advent Calendar 2019」7日目の記事です.
去年今年とウェブサイト(ここ)を書いてきて覚えたこととかを書きます.
なうなHTML5を使いますが私がhtml4以前の人間なので交じるかもしれません(ご了承ください)
注意:htmlとjsとcssを使いますがperlとかは使いません.デプロイもやりません.
使用環境
- PC
- テキストエディタのみ!(IntelliJIDEAとかがあるほうがやりやすくなる)
前提
HTMLとはウェブに表示する文字とかをかくもの
CSSとはその文字とかいろいろを装飾するのを描くもの
jsとは動的な動き(実際にはそう見える?)を実装するもの
HTMLにおいて
1 |
|
これはコメントです
JSにおいて
1 |
|
これはコメントです
CSSにおいて
1 |
|
これはコメントです
HTMLで<
と>
で囲まれたものをタグといいます.<〇〇>
と</〇〇>
で囲まれたものを要素といいます.
1 |
|
このとき上のものは〇〇属性を持つspanタグといいます.
属性にはidやclassものによってはhref,src,alt,widthなどたくさんあります.
使える属性は使いたいタグのリファレンスを参照しましょう.
①HTMLの書き方
ウェブサイトには当然トップページが必要です. まず適当なディレクトリで(デスクトップにでも)「index.html」というファイル名のファイルを新規作成してください. indexはトップページを表すのに使われます. windowsだとエクスプローラーの設定の拡張子を隠すをオフにしてからしてください. 作成したら右クリックして編集(またはエディタ)を選択してください. そしてエディタに
1 |
|
と書いて保存しましょう. したらばエクスプローラーなどからファイルをウェブブラウザで開きましょう!(以下確認と呼称) 真っ白なページ(ダークモードなら暗いページ)がうつったら成功です. 何もないと思うかもですけどこれが基本です. ここから文字を表示したり装飾したりします. 次に下のように書きます
1 |
|
確認するとウェブブラウザのタイトルバーにトップページと表示されます.
1 |
|
このbodyにウェブサイトに表示されるものを書いていきます.
さぁいっぱい書いていこう!
headタグはサイトの情報を書きます.基本ディスプレイには表示されません.
1 |
|
を行末につけると改行します.
②装飾しよう!
前項までの状態では
文字がかけても白黒とかで全然見栄えが良くないはずです.
もっと見やすくしましょう.
まずindex.htmlがあるディレクトリにassetディレクトリを作成しまたそこにcssディレクトリを作成します.
次にapp.cssというファイルを作成します.
そしたらばheadタグ内に(titleタグの前でもあとでもいいです)
1 |
|
bodyタグ内に
1 |
|
こうかきます.んでもってapp.css内に
1 |
|
こう書きます.確認すると文字が赤に!背景が緑に!なる!
css実はこれは
1 |
|
こうもかけますが.
cssにかくのが最近のはやりです.htmlは文書構造だけをかいてすっきりさせて,cssに色や背景を書きましょう.
id属性の中身つまりid名(今回はtitle)はひとつのhtmlファイル内に重複してはいけません.
1 |
|
いくつもの要素に同じスタイルを適用したいけれどid全部変えなきゃいけないの!?という方もご安心を
class属性をタグに宣言することで可能です.class名は複数のタグで重複できるので
1 |
|
こうかける!cssは
1 |
|
こうです.
cssではid名を持つ要素の装飾は
1 |
|
class名を持つ要素の装飾は
1 |
|
タグ名の要素の装飾は
1 |
|
です.
スタイルの指定はここに書いた以上にたくさんあります.「css 角 丸める」など単語で検索するとたくさん出てきます.
タグにはどんな属性でも持てますしスタイルもつけられますが実際に動作する際に意味がない(反映されない)ものもあるのでタグのリファレンスを参照しましょう.
ヘッダー(見た目の方の)もcssで要素にスタイルをつけて作ります.
③スマホに対応しよう!
PC版ヴューはヘッダーがあったほうが便利ですがスマホの画面では入り切らないことも多いです.
そこでスマホで見られているときだけヘッダーではなくハンバーガーメニュー(三本線で押すとメニューが画面前面にでてくるやつ)が代わりに表示されるようにしましょう.
下みたいに指定するポジションがかぶってもいいのでまずどちらの要素も普通に書きます.このサイト(現在は使っていません)を例に説明します.
1 |
|
ポイントはスマホ用とPCようでそれぞれidをつけることです.
ハンバーガーアイコンとメニュー画面は分けて書きましょう.
メニュー画面はPCでは表示しないし,スマホ画面もハンバーガーアイコンを押すまで表示しないのでvisibility=”hidden”にしておきます.
次にbodyの一番下(</body>
の直前)に
1 |
|
と書きます.scriptタグで囲んだ中にはjavascriptのみを書きます.
何をこのコードがしているかというと…
まずwsizeにいまウェブを見ている人の端末のサイズを格納します.
次に端末の高さが端末の横幅より高いのならid名がwidescreenの要素のスタイルのvisibilityをhiddenにして,
そうでなければスマホ用(ハンバーガーアイコン)を隠します.
あとの2つの関数はハンバーガーを押したときの関数です.
先のhtmlコードのonclick属性の中で指定されます.
これで完成!見た目とかはFirefoxとかChrome等のブラウザをつかってこのサイトを見てF12を押すとこのサイトのhtml,css,jsをみられます.
④外からの見た目をよくしよう!
外からの見た目ってcssでしょ(ドヤッ)って思っている方それは半分あたりです.
確かにウェブの見た目はcssですが外というのは他のアプリやサイトでリンクを見たときの見た目です.
どうせ作ったらみんなに見てほしいですよね.けれどどれだけ凝ったサイトを作ってもそのアドレスを知らなければ誰も見に来てくれません.
そこでgoogle検索やsnsでのこのリンクの見た目を良くしようということです.
まずgoogle検索などの検索エンジンに対してはheadタグ内で↓を書きます.
1 |
|
キーワードにはこのサイトが出てほしい検索ワードを書きましょう.
サイト名やジャンルです.かといってたくさんのワードを書けばいいというものではありません.サイトに関係ないものなどが大量に含まれているものは順位が下がりやすいです.
あと最近の検索エンジンは内容も見るので良質な記事や文章を書くのが大事です.もちろん関係ない単語を大量にいれてvisibility=”hidden”にしてもだめですからね!
次はsnsに対応しよう!
これはSlackでの例です.ほかのSNSでもこんな感じで見られます.リンクを出すだけで絵とかが出てくる!
そのためにはheadタグに下を書きます
1 |
|
そして
1 |
|
を下のように変更します.
1 |
|
これで完璧!
まとめ
いかがでしたか?
結構早足だった気がしますが皆さんの助けになれば幸いです.
これからもちょくちょく頼まれたら書こうと思うので次回もどうぞご期待下さい!