一覧へ

HTML/CSSで実験プロトコルWebページを作る

実験プロトコルをHTML/CSS Webページとして作る方法。バイオ研究者のためのWeb開発の第一歩。

入門
|
75
|
検証済み (2026-06)
プロトコル実験文書化HTMLCSSWebページ
進捗0/19 (0%)

HTML/CSSで実験プロトコルWebページを作る

実験プロトコルをWordやPDFで共有したことはありますか?バージョンが混乱し、フォーマットが崩れ、「最終_最終_本当に最終.docx」が積み上がりますよね。

Webページは違います。URL1つで誰でも最新バージョンが見られ、どのデバイスでもきれいに表示されます。実験ノートからWebブラウザへ — プロトコルの進化です。

HTML:文書の骨格

HTMLは「これは見出し」「これはリスト」とブラウザに伝えるタグ言語です。DNA配列でコドンがアミノ酸を指定するように、HTMLタグはコンテンツの役割を指定します。

html
<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>Western Blot プロトコル</title>
</head>
<body>
  <h1>Western Blot プロトコル</h1>
  <p>Target: EGFR (Epidermal Growth Factor Receptor)</p>
  <p>最終更新: 2026-06-27</p>
</body>
</html>

主要タグ:

  • <h1> ~ <h6>:見出し(h1が最大)— 論文のSection/Subsectionと同じ
  • <p>:段落 — 本文テキスト
  • <ul><ol>:順序なし/順序ありリスト — 材料リスト、実験ステップ
  • <strong>:太字 — 重要な濃度、温度の強調
  • <a href="...">:リンク — 参考論文、製品ページへの接続

リストで材料とステップを整理する

実験プロトコルの核心は材料リストステップごとの手順です。

html
<h2>必要な材料</h2>
<ul>
  <li>1次抗体: Anti-EGFR (1:1000希釈)</li>
  <li>2次抗体: Anti-rabbit HRP (1:5000)</li>
  <li>PVDF膜 (0.45 μm)</li>
  <li>転写バッファー: 25 mM Tris, 192 mM Glycine, 20% Methanol</li>
</ul>

<h2>実験ステップ</h2>
<ol>
  <li>SDS-PAGEゲル準備(10%分離ゲル + 5%濃縮ゲル)</li>
  <li>タンパク質ローディング:各ウェルに<strong>30 μg</strong>ロード</li>
  <li>電気泳動:<strong>120V、90分</strong></li>
  <li>PVDF膜への転写:<strong>100V、60分</strong>(氷上)</li>
  <li>ブロッキング:5%スキムミルク/TBST、<strong>室温1時間</strong></li>
  <li>1次抗体反応:4°C、<strong>overnight</strong></li>
  <li>洗浄:TBSTで5分 × 3回</li>
  <li>2次抗体反応:室温、1時間</li>
  <li>ECL検出</li>
</ol>

<ul>は材料のように順序が関係ないもの、<ol>は実験ステップのように順序が重要なものに使います。

CSS:文書にスタイルを着せる

CSSはHTMLの「服」です。同じDNA配列も可視化方法によって全く異なって見えるように、同じHTMLもCSSによって完全に変わります。

html
<style>
  body {
    font-family: 'Noto Sans JP', sans-serif;
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    line-height: 1.7;
    color: #1a1a1a;
  }

  h1 {
    color: #2d5a3d;
    border-bottom: 3px solid #2d5a3d;
    padding-bottom: 8px;
  }

  h2 {
    color: #3d7a5a;
    margin-top: 32px;
  }

  strong {
    color: #c0392b;
    background: #fef3f2;
    padding: 1px 4px;
    border-radius: 3px;
  }

  li {
    margin-bottom: 8px;
  }
</style>

主要CSSプロパティ:

  • font-family:フォント — 可読性の出発点
  • max-width + margin: 0 auto:中央揃え — 読みやすい幅
  • line-height:行間 — 1.7が学術文書に最適
  • color:文字色 — 重要な数値の強調に活用
  • border-bottom:下線 — セクションの区切り

表で条件を整理する

実験条件を表で整理すると一目で比較できます。

html
<h2>抗体条件まとめ</h2>
<table>
  <thead>
    <tr>
      <th>抗体</th>
      <th>希釈比率</th>
      <th>反応条件</th>
      <th>時間</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Anti-EGFR(1次)</td>
      <td>1:1000</td>
      <td>4°C</td>
      <td>Overnight</td>
    </tr>
    <tr>
      <td>Anti-rabbit HRP(2次)</td>
      <td>1:5000</td>
      <td>室温</td>
      <td>1時間</td>
    </tr>
  </tbody>
</table>

<style>
  table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0;
  }
  th, td {
    border: 1px solid #ddd;
    padding: 10px 14px;
    text-align: left;
  }
  th {
    background: #f0f7f4;
    font-weight: 600;
    color: #2d5a3d;
  }
  tr:hover {
    background: #f9fafb;
  }
</style>

注意事項ボックスを作る

プロトコルで「これだけは必ず!」という注意事項を目立たせます。

html
<div class="warning">
  <strong>注意:</strong> 転写は必ず氷上で行ってください。
  メタノールを含む転写バッファーは発熱し、
  過熱するとタンパク質変性が起こります。
</div>

<div class="tip">
  <strong>ヒント:</strong> PVDF膜は使用前にメタノールで
  30秒間活性化する必要があります。乾燥した膜にはタンパク質が結合しません。
</div>

<style>
  .warning {
    background: #fef3f2;
    border-left: 4px solid #e74c3c;
    padding: 16px 20px;
    border-radius: 0 8px 8px 0;
    margin: 16px 0;
    line-height: 1.6;
  }
  .tip {
    background: #f0f7f4;
    border-left: 4px solid #2d5a3d;
    padding: 16px 20px;
    border-radius: 0 8px 8px 0;
    margin: 16px 0;
    line-height: 1.6;
  }
</style>

やってみよう(Faded Example)

空欄を埋めて実験材料リストをHTMLで完成させてください。

穴埋め問題html
<h2>必要な材料</h2>
< >
<li>PBS buffer (pH 7.4)</li>
<li>Trypsin-EDTA (0.25%)</li>
<li>FBS (10%)</li>
</ >

よくあるエラーと解決法

Q: 文字が小さすぎて見えません

bodyfont-size: 16px以上を設定してください。ブラウザのデフォルトは16pxですが、明示的に指定するのが良いです。

Q: タグを閉じないとどうなりますか?

HTMLは寛容なのでエラーなく通過しますが、レイアウトが予想と異なる表示になります。開始タグ(<ul>)を書いたら必ず閉じタグ(</ul>)を書いてください。

Q: CSSが適用されません

<style>タグが<head>の中にあるか、セレクターのスペルが合っているか確認してください。クラスセレクターは.warningのようにドット(.)で始まります。

Q: <script><head>の中にだけ入れるべきですか?<body>に入れてはダメですか?

両方可能ですが、実務では<body>の最下部に置くことが多いです。理由は2つ:

  1. ブラウザはHTMLを上から順番に読みます。<head><script>があると画面を描く前にスクリプトを実行するので、ローディングが遅くなる可能性があります。
  2. document.getElementById("result")のようなコードが<head>で実行されると、まだ<body>の要素が作られていないためnullになります。

<head>の中に置きたい場合はdefer属性を追加してください:<script defer src="app.js"></script>。これでHTML解析が完了した後に実行されます。

Q: 絶対パス(/page)と相対パス(page)の違いは何ですか?

  • 絶対パス/で始まる。サーバールート基準。/samples/listは常にhttp://ドメイン/samples/listを指します。
  • 相対パス/なしで始まる。現在のドキュメント位置基準。現在のページがhttp://ドメイン/admin/dashboardなら、listhttp://ドメイン/admin/listを指します。

リンクやフォームのactionでパスが意図通りに動かない場合、絶対/相対パスの混同が原因である可能性が高いです。

Q: GitHub Pagesにデプロイしたのに404が出ます

GitHub Pagesはデフォルトでindex.htmlファイルを最初のページとして探します。ファイル名がmy_page.htmlのように別の名前だと、URLにファイル名を直接入力する必要があります。またファイル名にスペースがあるとURLで%20とエンコードする必要があります。可能であればファイル名にスペースを入れず、メインページはindex.htmlにしましょう。

💬 質問・コメント

0件のコメント

ログインせずに投稿できます。ゲスト投稿は投稿者自身で編集・削除できません。

0/2000

読み込み中...