カテゴリー: 未分類

  • [CSS]文字の太さを設定します

     つぎのようにすると文字を太字にすることができます。本当は細かく太さを設定できるのですが、実際には普通と太字しか表示できないようです。

    font-weight: bold;  /* 太字 */
    font-weight: normal; /* 標準 */

  • [CSS]色を設定します

     CSSで色を指定できるところは、文字色(color:)、背景色(background-color:)、枠の色(border-color:)があります。
     カミュプリィのホームページではみかん色(#F08300)やあんず色(#F7B977)を多く使用しています。CSSでの指定は『color: #f08300』のようになります。

    色の番号は色見本のサイトで調べることができます。

    WEB色見本 原色大辞典


     同じ色の濃淡が必要なときは『color: #f08300cc』『color: #f0830077』のように濃さ(透過)の設定を加えます。透過を指定しない『color: #f08300』は『color: #f08300FF』と同じです。
     色の設定とは別に、濃さ(透過)のみ(opacity:)を設定することができます。画像の透過に役立てそうです。値は0から1までの数値か、0%から100%までの割合で設定できます。1または100%が透過しないという意味になります。

  • [CSS]CSS・スタイルの書きかた

     タグのなかにstyle=”設定”と書く方法、<html>の<head>内に<style>~</style>と書く方法、別のファイルに書いて<html>の<head>内に<link rel=”stylesheet” href=”ファイル名.css”>と書く方法の3種類があります。
     いずれにしても、①どこへ適用するのか、②どの設定か、③どんな値かということを書いていきます。改行をいれて見やすくすることができますが必須ではありません。

    ①適用範囲 { ②設定: ③値; }

    ①適用範囲(セレクタ―)

     タグ名はそのまま入力します。クラス名は先頭に『.(ピリオド)』を付けます。アイディ名は先頭に『#(シャープ)』を付けます。全要素にするときは『*(アスタリスク)』です。
     複数の名前を空白で区切ると[または(OR)]という意味になり、適用範囲を広げられます。
     複数の名前を『,(カンマ)』で区切ると[かつ(AND)]という意味になり、適用範囲を小さくします。
     区切記号は他にも『>(不等号記号)』『+(プラス)』『~(チルダ)』があります。
     そして『[](角括弧)』や『:(コロン)』でさらに条件を付けることができます。

    ②設定(プロパティ)、③値(バリュー)

     設定できる項目は決まっています。

    CSS の基本 – ウェブ開発を学ぶ | MDN

  • [CSS]リストの後ろを隠す・開く

     長いリストのうしろのほうを隠しておき、ボタンが押されたら開くようにします。

     ↓ボタンが押されると展開します。

    HTML

    <div class="cp_box">
    <input id="cp01" type="checkbox">
    <label for="cp01"></label>
    <div class="cp_container">
    <p>0000/00/00(日)<br>いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす</p>
    /* ここに複数行を書く */
    <p>0000/00/00(日)<br>いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす</p>
    </div>
    </div>

    CSS

    .cp_box label {
    z-index: 1;
    position: absolute;
    bottom: 0;
    width: 100%; /* グラデーションの幅 */
    height: 6em; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center; /* ボタン内の文字の位置 */
    background: linear-gradient(to bottom, #FFFFFF00 0%, #FFFFFFFF 100%); /* 背景をサイトに合わせる */
    }
    .cp_box input:checked + label:after {
    content: '閉じる'; /* ボタンの名前(開いたとき) */
    }
    .cp_box label:after {
    z-index: 2;
    content: '続きをよむ'; /* ボタンの名前(閉じたとき) */
    position: absolute;
    line-height: 2.5em; /* ボタンの高さ */
    bottom: 0;
    left: 50%;
    width: 16em;
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    border-radius: 20px;
    color: #FFFFFF; /* ボタンの文字色 */
    background: #5AA25A; /* ボタンの背景色 */
    }
    .cp_box {
    position: relative; /* ボタンの位置を内容にあわせる */
    }
    .cp_box input:checked + label {
    background: inherit; /* 開いた時にグラデーションを消す */
    }
    .cp_box input {
    display: none;
    }
    .cp_box .cp_container {
    overflow: hidden; /* 閉じているときに下の部分を隠す */
    height: 20em; /* 閉じているときの高さ */
    }
    .cp_box input:checked ~ .cp_container {
    height: auto; /* 開いたり閉じたりするときに高さが変更されるようにする */
    padding-bottom: 2.5em; /* 閉じるボタンを下へ調整 */
    }
  • [CSS]タブのように等間隔で横並び

     カミュプリィのホームページの上部にある『ホーム』『ウェブ』『維持』『ついて』の4つのタブを等間隔で並べています。

    HTML

    	<div class="menu">
    <div class="current"><a href="./index.html">ホーム</a></div>
    <div><a href="./site-create/index.html">ウェブ</a></div>
    <div><a href="./system-keep/index.html">維持</a></div>
    <div><a href="./aboutus/index.html">ついて</a></div>
    </div>

    CSS

    .menu {
    display: flex;
    justify-content: space-between;
    }

    .menu div {
    list-style: none;
    width: 25%;
    height: 2rem;
    line-height: 2rem;
    text-align: center; /* 文字の位置: 中央寄せ */
    border: 1px solid white; /* 枠線 */
    background-color: #f7b977cc; /* 背景色 */
    }

    .menu div:hover {
    background-color: #f7b97777; /* 背景色 */
    }

    .menu a {
    display: block;
    color: black; /* 文字色 */
    text-decoration: none;
    }

    .current a {
    border: 2px solid; /* 枠線 */
    border-color: black white white black;
    background-color: #f7b977ff; /* 背景色 */
    }
  • [CSS]左寄せ・右寄せで横に並べます

     カミュプリィのホームページの上部にある『カミュプリィ』は左寄せ、『個人情報保護方針』は右寄せになっています。

    HTML

    <div class="top">
    <div class="commuply"><a href="./index.html">カミュプリィ</a></div>
    <div class="privacypolicy"><a href="./aboutus/privacypolicy.html">個人情報保護方針</a></div>
    </div>

    CSS

    .top {
    display: flex;
    justify-content: space-between;
    }

    .top div {
    margin: 0 1rem; /* 外側の余白: 上下左右*/
    list-style: none;
    height: 2rem;
    line-height: 2rem;
    text-align: center; /* 文字の位置: 中央寄せ */
    }

    .top .commuply {
    text-align: left;
    }

    .top .privacypolicy {
    text-align: right;
    }
  • [JavaScript]Copyrightの年を常に今年に書き換えます

     ページの末尾にCopyrightを記載したサイトを見かけます。ちなみに『©』は『&copy;』と書くことで表示できます。

    Copyright © 2022 カミュプリィ (Commuply Inc.)

    年が入っているため更新しないでおくと、何年もサイトを更新していないように思われてしまいます。
    自動更新できないかなぁと考えました。

    HTML

     htmlのhead部分に使用するジャバスクリプトのファイルを記載します。

    <head>
    <script type="text/javascript" src="./loadevent.js"></script>
    </head>

     つぎに、実際に表示される年の数字部分に『currentyear』と名前を付けます。この名前をつけた部分をジャバスクリプトで書き換えます。

    <span class="currentyear">2022</span>

    JavaScript

     『currentyear』を今年へ書き換える関数を書きます。

    function updateyear() {
    let currentyear = document.getElementsByClassName(‘currentyear’);
    for(var i = 0, len = currentyear.length|0; i < len; i = i + 1|0) {
    currentyear[i].textContent = (new Date()).getFullYear();
    }
    }

     つぎに、htmlが表示されたときに『updateyear』を呼び出す設定をします。

    window.addEventListener('load', updateyear);

  • [Python]日本語対応するために

     Pythonのプログラムを日本語対応するために次のコードを追加します。

    import sys
    sys.stdin = open(sys.stdin.fileno(), 'r', encoding='UTF-8')
    sys.stdout = open(sys.stdout.fileno(), 'w', encoding='UTF-8')
    sys.stderr = open(sys.stderr.fileno(), 'w', encoding='UTF-8')

  • [HTML]サイトアイコン(ファビコン)を設定します

    [HTML]サイトアイコン(ファビコン)を設定します

     ウェブサイト毎に独自のアイコンが設定されているサイトを目にしますが、ワードプレスのアイコンをそのまま使っているサイトも見かけます
     このアイコンを変更してみましょう

    画像

     サイズが異なる画像(シンボル)がいくつか必要になります

    favicon.ico(ふぁびこん)

     縦横ともに48ピクセルの画像で用意します
     ファイルをFTPでサイトのルートフォルダに保存します
    例:www.commuply.co.jp/favicon.ico

    apple-touch-icon.png

     縦横ともに180ピクセルの画像で用意します
     ファイルをFTPでサイトのルートフォルダに保存します
    例:www.commuply.co.jp/apple-touch-icon.png

    サイトアイコン

     縦横ともに150ピクセル以上のアイコンを用意しましょう
     検索エンジンは48ピクセルの倍数がよいそうなので、48ピクセルの4倍にあたる192ピクセルにします

    HTMLファイルのばあい

    HTMLの<head>の中に次の行を書きます。

    <link rel="icon" href="/favicon.ico.ico"><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">

    WordPress(ワードプレス)のばあい

     [メディア]に192ピクセルの画像を登録します

     192ピクセルの画像を、[外観]からテーマの[サイトアイコン]を設定します。テーマ毎に具体的な設定場所が異なります

     [Ogp Plus]プラグインを登録して、デフォルトOGP画像に192ピクセルの画像を登録します

     [Head & Footer Code]プラグインを登録して、[HEAD Code]欄に次のコードを登録します

    <link rel="icon" href="/favicon.ico.ico"><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">

    BaserCSM(ベーサーシーエムエス)のばあい

    サイトのフォルダ/app/webroot/favicon.icoを更新します。

  • [DNS]wwwなしをwww付きURLへリダイレクト

     カミュプリィのウェブサイトwww.commuply.co.jpは、wwwなしのcommuply.co.jpでもアクセスできるように、DNSで同じIPアドレスを設定しています。
    ウェブサイトはwww付きのhttps://www.commuply.co.jp/ですよ!とご案内してますので、wwwなしでアクセスしてきたときはwww付きへ自動変換しています。

    (空欄) A IPアドレス
    WWW A IPアドレス

    参考にしたページはつぎのものです。
    【.htaccess】httpからhttpsへリダイレクト、wwwありなし統一、index.html(php)ありなし統一の設定方法&記述内容の意味

  • [HTML]テンプレート

     HTMLの書き方は人それぞれ多種多様ではないかとおもいます。
    しかしながら初めてHTMLを書こうと思い立ったひとは、やることが多すぎて困ってしまうのかなとおもいます。
    そんなわけでこんな感じでどうでしょうか?というテンプレートをつくってみました。

    <!doctype html>
    <html lang=”ja”>
    <head>
    <meta charset=”utf-8″>
    <meta name=”viewport” content=”width=device-width,initial-scale=1″>
    <meta name=”description” content=”ページの要約”>
    <meta name=”keywords” content=”キーワード1,キーワード2″>
    <title>ページのタイトル</title>
    <link rel=”shortcut icon” href=”./favicon.ico”>
    <link rel=”stylesheet” href=”./スタイルシートのファイル名.css”>
    <script type=”text/javascript” src=”./スクリプトのファイル名.js”></script>
    <meta property=”og:site_name” content=”サイト名”>
    <meta property=”og:type” content=”website”>
    <meta property=”og:url” content=”サイトのパス”>
    <meta name=”twitter:card” content=”summary”>
    <meta name=”twitter:domain” content=”サイト名”>
    </head>
    <body>
    <header>
    /* ここにページの上部を書く */
    </header>
    <main>
    /* ここにページの本文を書く */
    </main>
    <footer>
    <small>Copyright &copy; 2022 <a href=”著作者のサイトのパス”>著作者名</a></small>
    </footer>
    </html>

  • [FTP]サーバへ保存するファイルは英数字にします

     ファイル名が日本語のファイルをFTPでアップロード/ダウンロードすると文字化けします。
    ファイル名は英数字にするようお願いします。

  • [Edge]ファイルを更新したのにブラウザが更新されない

     サーバに乗っけたCSSや.htaccessファイルなどを更新したのに、ブラウザで開いてみると更新されないってことが多々ありませんか?
    WindowsならMicrosoft Edgeの設定を変更して、ブラウザを閉じて開きなおせば最新のファイルを再読み込みしてくれるようにできます。

    まずMicrosoft Edgeを開きます。
    画面右上にある 『・・・』 から『設定』を選び、『プライバシー、検査、サービス』を開きます。
    『閲覧データをクリア』欄にある『ブラウザーを閉じるたびにクリアするデータを選択する』を開き、『キャッシュされた画像とファイル』をオンにします。

     これでMicrosoft Edgeを開きなおすたびに変更内容が反映されます。

  • [Python]このプログラムのパス

     CGIとして呼ばれるPythonプログラムをつくって、Cronからも呼び出すようにしました。
    Pythonプログラムから、プログラムと同じディレクトリにある別のファイルにアクセスするようにしました。この実行中のプログラムファイルの絶対パスを取得しようと試行錯誤したのですが、結果はダメでした。仕方なくプログラムの絶対パスを定数としてプログラムに埋め込みました

     カレントディレクトリを取得する方法は次のようなものですが、CGIから呼び出されるときはプログラムのあるディレクトリと同じでした。Cronから呼び出すとプログラムとは異なるディレクトリになりました。

    import os
    カレントディレクトリ = os.getcwd()

    または

    import os
    カレントディレクトリ = os.path.abspath('./')

  • [Python]文字コードや改行コード

    StarServerに配置するPythonのCGIは、文字コードUTF-8、改行コードLFにしないと動きませんでした。

  • [Python]先頭に書くコマンドパス

    Pythonプログラムの先頭に書くコマンドパスは次のようにします。

    !/usr/bin/python3.6

    StarServerでは次のようにすると動きませんでした

    !/usr/bin/env python

  • [Python]CGIが外部ファイルを指定するときのパスの書き方

    CGIはサーバ上で動かすものなので、http のパスではなく、FTPでアクセスするときのパスで書きます。

  • [Python]拡張子.pyのままCGIとして動かす方法

    .htaccessファイルに次の行を追記します。

    AddHandler cgi-script .py

  • [HTTP Server]httpからhttpsへの強制リダイレクト

     誰かが http://www.commuply.co.jp/ へアクセスしようとしても、必ずセキュリティ付きの https://www.commuply.co.jp/ を表示するように設定することができます。

     サイトの全体を変更するには、サイトの一番ルート部分にある .htaccess ファイルに次のおまじないを記載します。

    RewriteEngine on
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

  • [Windows]UTF-8のファイルを簡単につくる方法

     フォルダの空いているところでマウスの右ボタンをクリックします。
    [新規作成]-[テキスト ドキュメント]を選びます。

    [新規作成]-[テキスト ドキュメント]

     できあがった『新しいテキスト ドキュメント.txt』をメモ帳で開いてみましょう。
    メモ帳の右下に『UTF-8』と表示され、成功したことがわかります。
    新しいテキスト ドキュメント.txt

     ちなみにメモ帳を新しく開くと『ANSI』のこともあれば『UTF-8』のこともありました。でも、今みると『UTF-8』でした!パソコンによって異なるのかなぁ?