ラベル HTML&CSS Basic の投稿を表示しています。 すべての投稿を表示
ラベル HTML&CSS Basic の投稿を表示しています。 すべての投稿を表示

月曜日, 7月 28, 2025

HTML_CSS_19 
HTMLとCSSの組み合わせ色々

HTMLとCSSの記述組み合わせ3パターンを簡易設定で整理してみました。

■一番簡単なHTMLだけの記述
作成するデータが1ファイルだけだったら、これもアリですが、CSSを知ってしまうとめんどうに感じマスね。

<!-- index.html -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content=
"width=device-width, initial-scale=1.0">
</head>
<body bgcolor="midnightblue">
<table width="640" height="480" align="center">
<tr>
<td align="center" valign="middle" bgcolor="royalblue">
<H2><font color="white">
Clip art of graceful goldfish</font></H2>
<!-- 画像はindex.htmlと同じ階層にある
picフォルダー内の640×480pxサイズ -->
<img src="pic/picture.jpg" width="500" alt="金魚の画像">
</td>
</tr>
</table>
</body>
</html>
<!-- index.html -->

表示結果
実は640×480pxで指定したボックスが、なぜか636×476pxになっていました

■CSSを別途作成し手HTMLで読み込む
HTMLデータ作成の基本ですね。

/* rule.css */
@charset "UTF-8";
body {
text-align: center;
background-color: midnightblue;
}
.mainbox {
width: 640px;
height: 480px;
margin: 10px auto;
background-color: royalblue;
}
.f_sizu24 {
padding: 27px;
font-size: 24px;
font-weight: bold;
color: white;
}
/* rule.css */

<!-- index.html -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content=
"width=device-width, initial-scale=1.0">
<!-- cssファイルを指定 -->
<link rel="stylesheet" type="text/css" href="rule.css">
</head>
<body>
<div class="mainbox">
<div class="f_sizu24">
Clip art of graceful goldfish
</div>
<!-- 画像はindex.htmlと同じ階層にある
picフォルダー内の640×480pxサイズ -->
<img src="pic/picture.jpg" width="500" alt="金魚の画像">
</div>
</body>
</html>
<!-- index.html -->


表示結果。「一番簡単なHTMLだけの記述」での表示とテキスト行間が若干異なります。

■HTML内にCSSを記述
作成するデータが1ファイルだけで、CSS記述が解れば、これもアリですね。

<!-- index.html -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content=
"width=device-width, initial-scale=1.0">
<!-- <style>~</style>にcssを記述 -->
<style>
body {
text-align: center;
background-color: midnightblue;
}
.mainbox {
width: 640px;
height: 480px;
margin: 10px auto;
background-color: royalblue;
}
.f_sizu24 {
padding: 27px;
font-size: 24px;
font-weight: bold;
color: white;
}
</style>
</head>
<body>
<div class="mainbox">
<div class="f_sizu24">
Clip art of graceful goldfish
</div>
<!-- 画像はindex.htmlと同じ階層にある
picフォルダー内の640×480pxサイズ -->
<img src="pic/picture.jpg" width="500" alt="金魚の画像">
</div>
</body>
</html>
<!-- index.html -->
 
表示結果。「CSSを別途作成してHTMLで読み込む」と全く同じです。

月曜日, 7月 07, 2025

HTML_CSS_18 
HTMLでフォントサイズの設定比較


HTMLで3つのフォントサイズの設定を比較してみました。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content=
        "width=device-width, initial-scale=1.0">
<title>フォントサイズ指定</title>
<style>
body {
background-color: lemonchiffon;
}
.f_sizu16 {
font-size: 16px;
}
.mainbox {
width: 350px;
height: 300px;
margin: 0px auto;
margin-top: 50px;
}
</style>
</head>
<body>
<div class="mainbox">
<div class="f_sizu16">
このフォントサイズは16px指定です</div>
<p>このフォントサイズはP指定です</p>
<h4>このフォントサイズはH4指定です</h4>
<br>
<div class="f_sizu16"><b>
このフォントサイズは16px指定Boldです</b></div>
<p><b>このフォントサイズはP指定Boldです</b></p>
<h4>このフォントサイズはH4指定です</h4>
</div>
</body>
</html>


上は処理結果です。<P>と<;H4>は16ptと同等です。ただし、<;H4>は太字になるので、16ptと<P>はBold指定すると<;H4>と同じに見えます。

土曜日, 5月 31, 2025

HTML_CSS_17 
HTMLでマウスオーバーでイメージ表示

いわゆるロールオーバーの逆ですね。
表示用のイラストは・・・
pic/fish.pngに保存しています。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content=
        "width=device-width, initial-scale=1.0">
<title>マウスオーバーでイメージ表示</title>
<style>
body {
background-color: aqua;
}
.box {
width: 600px;
height: 200px;
opacity: 0.0;
}
.box {
width: 300px;
height: 300px;
opacity: 0.0;
transition: opacity 0.3s ease-in-out;
}
.box:hover {
opacity: 1;
}
</style>
</head>
<body>
<center>
<h2>マウスオーバーでイメージ表示</h2>
<div class="box">
<img src="pic/fish.png" width=300px height="300px">
</div>
</center>
</body>
</html>

表示直後の状態

マウスを近づけるとイラスト後表示されます。

日曜日, 3月 30, 2025

HTML_CSS_16 
HTMLでテキストの色々なカーニング設定

HTMLでテキストの色々なカーニング設定を整理してみました。

HTMLでのカーニング適用

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>カーニング設定</title>
<style>
body {
background-color: lemonchiffon;
font-family:'MS P明朝', 'MS 明朝';
font-size: 14pt;
font-weight: 700;
}
.kerning-wide {
letter-spacing: 2px; /* 文字間を広げる */
}
.kerning-tight {
letter-spacing: -1px; /* 文字間を狭める */
}
</style>
</head>
<body>
<p>HTML上のテキストカーニングについて(無設定)</p>
<p class="kerning-wide">
HTML上のテキストカーニングについて(広げる)</p>
<p class="kerning-tight">
HTML上のテキストカーニングについて(狭める)</p>
</body>
</html>

HTMLでのカーニング適用の実行結果
(MS P明朝)

ブラウザの自動カーニング適用(Chromeで実行)

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>カーニング設定</title>
<style>
body {
background-color: lemonchiffon;
font-family:'MS P明朝', 'MS 明朝';
font-size: 14pt;
font-weight: 700;
}
p {
font-kerning: normal; /* ブラウザの自動カーニング */
/* auto ブラウザのデフォルト
                (フォントにカーニング情報があれば適用)
normal 可能ならカーニングを適用
none カーニングを無効化
*/
}
</style>
</head>
<body>
<p>HTML上のテキストカーニングについて
        (ブラウザの自動カーニング)</p>
</body>
</html>

ブラウザの自動カーニング適用の実行結果
(MS P明朝)

OpenTypeのカーニング適用

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>カーニング設定</title>
<style>
body {
background-color: lemonchiffon;
font-family:'MS P明朝', 'MS 明朝';
font-size: 14pt;
font-weight: 700;
}
p {
font-feature-settings: "kern";
            /* OpenTypeのカーニング適用 */
}
</style>
</head>
<body>
<p>HTML上のテキストカーニングについて
        (OpenTypeのカーニング適用)</p>
</body>
</html>

OpenTypeのカーニング適用の実行結果
(MS P明朝)

月曜日, 3月 24, 2025

HTML_CSS_15 
WebFontのGoogleFontをHTMLで記述手順

WebFontであるGoogleFontをHTMLで記述する手順を整理しました。便宜上CSSはHTML内に埋め込んでいます。


(1)body内のテキストを全てゴシック体に設定する場合

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>Google Fonts の利用</title>
<!-- Google Fonts の読み込み(例: "Noto Sans JP")-->
<link href="https://fonts.googleapis.com/css2?family=
Noto+Sans+JP:wght@400;700&display=swap" rel="stylesheet">

<style>
body {
background-color: lightcyan;
font-family: 'Noto Sans JP', sans-serif;
}
h2 {
font-weight: 700; /* bold */
font-kerning: normal; /* 自動カーニング */
color: blueviolet;
}
p {
font-weight: 400; /* Regular */
font-kerning: normal; /* 自動カーニング */
color: green;
}
</style>
</head>
<body>
<center>
<h2>Google Fonts を使ってみる</h2>
<p>webフォントを設定すれば表示フォントを共有できます
</p>
</center>
</body>
</html>

(1)の処理結果/全てNoto Sans Japanese

(2)CSS内で&lt;H&gt;や&lt;P&gt;タグを指定する場合

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>Google Fonts の利用</title>
<!-- Google Fonts の読み込み(例: "Noto Sans JP") -->
<link href="https://fonts.googleapis.com/css2?family=
Noto+Sans+JP:wght@400;700&family=
Noto+Serif+JP:wght@400;700&display=swap" rel="stylesheet">

<style>
body {
background-color: lightcyan;
font-family: 'Noto Ssans JP', sans-serif; /* デフォルト */
}
h2 {
font-family: 'Noto Serif JP', serif;
font-weight: 700; /* bold */
font-kerning: normal; /* 自動カーニング */
color: blueviolet;
}
p {
font-family: 'Noto Sans JP', sans-serif;
font-weight: 400; /* Regular */
font-kerning: normal; /* 自動カーニング */
color: green;
}
</style>
</head>
<body>
<center>
<h2>Google Fonts を使ってみる</h2>
<p>webフォントを設定すれば表示フォントを共有できます
</p>
</center>
</body>
</html>

(2)の処理結果/上はNoto Serif Japanese、下はNoto Sans Japanese

(3)body内で&lt;H&gt;や&lt;P&gt;タグごとに指定する場合

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>Google Fonts の利用</title>
<!-- Google Fonts の読み込み(例: "Noto Sans JP") -->
<link href="https://fonts.googleapis.com/css2?family=
Noto+Sans+JP:wght@400;700&family=
Noto+Serif+JP:wght@400;700&display=swap" rel="stylesheet">

<style>
body {
background-color: lightcyan;
font-family: 'Noto Ssans JP', sans-serif; /* デフォルト */
}
h2 {
font-weight: 700; /* bold */
font-kerning: normal; /* 自動カーニング */
color: blueviolet;
}
p {
font-weight: 400; /* Regular */
font-kerning: normal; /* 自動カーニング */
color: green;
}
</style>
</head>
<body>
<center>
<h2 style="font-family: 'Noto Serif JP', serif;">
Google Fonts を使ってみる</h2>
<p style="font-family: 'Noto Sans JP', sans-serif;">
webフォントを設定すれば表示フォントを共有できます
</p>
</center>
</body>
</html>

(3)の処理結果/上はNoto Serif Japanese、下はNoto Sans Japanese

月曜日, 12月 26, 2022

HTML_CSS_14 
HTMLとCSSの関連と構造を再確認

間が空いてしまいましたが、質問を有りましたので整理しました。以下の完成データの再確認です。

ファイル構造は上記の通りです

レイアウト構造は以下の通りです

(A)main_box(全体)
(B)side_menu(左端のボタンが配置されている部分)
(C)content(右端のメインビジュアルがある部分)
(1)header(「森のお菓子屋さん」の部分)
(2)〜(5)menu_button(ページ分岐のボタン部分)
(6)message(文章部分)
(7)main_picture(メインビジュアル)

HTMLでの関連
index.htmlでcssファイルの指定漏れは要注意(以下の*****の部分)
<link rel="stylesheet" type="text/css" href="*****">

CSSでの関連

月曜日, 11月 16, 2020

HTML_CSS_13 
1文字ミスも致命的なのでエディターは重要

HTMLやCSSファイルにおいて1文字のタイプミスも致命的な結果に繋がります。そのためにHTMLやCSSに対応した専用のエディターを利用することでミスを見付けやすくするのですが、今回はどの程度で画面が崩れるかの簡単なシミュレーションです。なお、ここではWindows環境のVisual Studio Codeを利用して居ますが対応しているエディターならどれも一緒です。ただし表示される色はエディターごとに異なります。以下がフリーで高性能なエディターの一部ですが、プログラムサイズが大きいので、サイズが小さくてフットワークの良いエディタはネット上で「フリーのテキストエディタ」で検索すると色々と紹介されています。

Visual Studio Code

Atom

Brackets(2021/09/01にサポートが終了しています)

今回のデータ構成は上の様になっています。

上は、index.htmlを表示したノーマル状態です。

index.htmlの一部
※タイプミスがあります。
誤<html lang="jp"> 正<html lang="ja">

※HTMLの1行目に抜けがあります。
<!DOCTYPE html>を1行目に追加

rule.cssの一部

main_box冒頭の「<」を全角文字にミスタイプすると・・・
※タイプミスがあります。
誤<html lang="jp"> 正<html lang="ja">

※HTMLの1行目に抜けがあります。
<!DOCTYPE html>を1行目に追加
main_boxのサイズが狂ってしまいます。

main_boxの名称をタイプミスすると・・・
※タイプミスがあります。
誤<html lang="jp"> 正<html lang="ja">

※HTMLの1行目に抜けがあります。
<!DOCTYPE html>を1行目に追加
main_boxのサイズが狂ってしまいます。

タイトル画像の位置を指定する際にフォルダー名を忘れてしまったら・・・
※タイプミスがあります。
誤<html lang="jp"> 正<html lang="ja">

※HTMLの1行目に抜けがあります。
<!DOCTYPE html>を1行目に追加
タイトル画像は表示されません。

rule.cssでmain_boxのmarginスペルを間違えたら・・・

main_boxの位置は左上に固定されてしまいます。
このように1モドのミスで画面が壊れてしまうのでタイピングは可能な限りコピー&ペーストをかつようします。また、エディーでは正しく処理されているか否かで表示色が異なるのでミスを発見しやすくなります。

木曜日, 10月 01, 2020

HTML_CSS_12 
CSSで切り替え?それともHTML?

CSSを使うメリットはレイアウト変更が素早く簡単にできるです。

まず、本来の設定画面です。ここでは簡単な処理としてメニューとメインコンテンツの位置関係を逆に設定してみます。

処理としては[float]設定の左右を変更するだけです。

/* rule.css */
div#side_menu { 
float: left;
height: 520px;
width: 25%;
background: #63dada;
}

div#content {
float: right;
height: 520px;
width: 75%;
background: #4ff1ae;
}
/* rule.css */

↓修正部分は青字の部分です。

/* rule.css */
div#side_menu { 
float: right;
height: 520px;
width: 25%;
background: #63dada;
}

div#content {
float: left;
height: 520px;
width: 75%;
background: #4ff1ae;
}
/* rule.css */

では、index.htmlのみ元の状態で、それ以外は左右を変更したい場合は・・・元々のCSSで複製していたときの状態(content01〜03)を個別に変更する方法が考えられます。

/* menu01.html 〜menu03.html*/
<div id="side_menu">
/* menu01.html 〜menu03.html*/

/* rule.css */
div#side_menu02 {    /* div#side_menu02を追加 */
float: left;
height: 520px;
width: 25%;
background: #63dada;
}

div#content_01 {
float: right;
height: 520px;
width: 75%;
background: #fc7ca9;
}

div#content_02 {
float: right;
height: 520px;
width: 75%;
background: #80acf2;
}

div#content_03 {
float: right;
height: 520px;
width: 75%;
background: #9acd32;
}
/* rule.css */

↓修正部分はdiv#side_menu02を追加の追加と青字の部分です。

/* menu01.html 〜menu03.html*/
<div id="side_menu02">
/* menu01.html 〜menu03.html*/

/* rule.css */
div#side_menu02 {   
float: right;
height: 520px;
width: 25%;
background: #63dada;
}

div#content_01 {
float: left;
height: 520px;
width: 75%;
background: #fc7ca9;
}

div#content_02 {
float: left;
height: 520px;
width: 75%;
background: #80acf2;
}

div#content_03 {
float: left;
height: 520px;
width: 75%;
background: #9acd32;
}
/* rule.css */

しかし、よく考えれば、デフォルト設定を全て左右逆に変更し、index.htmlだけ元に戻す設定もアリですね。いやもその方が分かり易いです。

/* rule.css */

div#side_menu {    

float: right;

height: 520px;

width: 25%;

background: #63dada;

}


div#content {
float: left;
height: 520px;
width: 75%;
background: #fc7ca9;
}
/* rule.css */

<!-- index.html>
<div id="side_menu">
<div id="content">
<!-- index.html>
    ↓
<!-- index.html>
<div id="side_menu" style="float:left;">
<div id="content" style="float:right;">
<!-- index.html>

もしfloatだけでなく背景色も変更したい場合は以下の様に記述します。

<!-- index.html>
<div id="side_menustyle="background:#63dada; float:left;">
<div id="contentstyle="background:#4ff1ae; float:right;">
<!-- index.html>

こうなってくると、だんだん複雑に見えるようになるので以下の様に記述すると見直したときに混乱しないです

<!-- index.html>
<div id="side_menu
            style="background:#63dada; 
            float:left;">
<div id="content" 
            style="background:#4ff1ae; 
            float:right;">
<!-- index.html>

HTMLやCSSの記述は、後のことも考えて処理する習慣を付けることが大切です。