BEM・FLOCSSによるCSS設計のすすめ

 

コーディングの効率を上げる方法はいろいろあります。

 

例えば、SCSSやPugといった簡略記法だったり、プラグインが豊富なエディタ(Visual Studio Code等)を使用するなどです。

 

しかし、これらの技術やツールを活用しても「CSS設計」が自己流のままでは十分ではありません。CSS設計がきちんとできていないと、クラス名を何度も修正する手戻りが発生したり、追加依頼に既存のクラスを流用できず、似たようなスタイルを一からコーディングする羽目になったりします。

今回はコーディングの効率化をする上で、もっとも重要な「CSS設計」について紹介いたします。

1. CSS設計とは

「CSS設計」とは、CSSを管理しやすく保つための手法のことです。

CSSでWebサイトを作ること自体は、自己流の書き方でも十分可能です。LPや小規模のサイトなら、まだ全体像を把握することができます。しかし、ページ数が増えてくるとCSSはどんどん複雑になり、全体を管理することは難しくなってきます。

きちんと管理されずに書かれたCSSは、サイト公開後の運用において「ページを追加したけどスタイルがきちんと当たらない」「見出しのデザインを修正したらレイアウトが崩れた」など、さまざまな問題を引き起こします。

こうした問題を回避するために考えられたのが「CSS設計」です。GoogleのエンジニアであるPhilip Waltson氏は「よいCSS設計」を以下のように提唱しています。

1. 予測できる
2. 再利用できる
3. 保守できる
4. 拡張できる

有名な手法としてはOOCSSやBEM、SMACSS、FLOCSSといったものがあります。ここからは私自身が使用して、実際に恩恵を受けているBEMFLOCSSについて紹介します。

2. BEMについて

BEMとは「Block」「Element」「Modifier」の略で、要素を3つに分解して命名する手法です。BEMはクラスセレクターの使用が基本となっており、要素型セレクター(h1, p..)やIDセレクター(#header, #nav..)は推奨されていません。

Block
– どこでも使い回すことができる、大きなパーツ。
Element
– Blockを構成する要素で、Blockの外では独立して使用できない。
Modifier
– BlockやElementの状態や特徴を表す。必ずBlockやElementと一緒に使う。

2-1. BEMの記述法

「Block__Element—Modifier」のように記述します。
・ 「Block」と「Element」はアンダースコア2つ( __ )で区切ります。
・ 「Element」と「Modifier」はハイフン2つ( — )で区切ります。

記述サンプル例:
BEMの記述サンプル

2-2. BEMのメリット

・ Block名から、どのパーツのクラスなのか判断できる。
(例:header / header-logo / header-navi)

・ Element名から、どのBlockに関連しているクラスなのか判断できる。
(例:header-navi__list / header-navi__item)

・ クラス名から影響範囲が予測できるので、想定外なレイアウト崩れがおきにくい。

・ 要素タグ(nav / ul 等)を基本的に使用しないので、スタイルがHTML構造に依存していない。
そのため、あとからHTMLを変更することができる。

3. FLOCSSについて

FLOCSSとは「Foundation Layout Object CSS」の略で、CSSファイルを「3つのレイヤー」と「3つの子レイヤー」に分けて管理する手法です。提唱したのは日本人の谷拓樹氏で、公式ドキュメントが日本語のため、わかりやすくて助かります。

Foundation
– サイト全体のデフォルトスタイルを定義します。(reset.scss / base.scss 等 )
Layout
– ページを構成する大きなレイアウトを定義します。(header.scss / main.scss 等)
Object
– サイト内で再利用できるモジュールを定義します。ファイルはいずれかの子レイヤーに配置。
Component
– サイト内で再利用できる最小単位のモジュールを定義します。
(c-breadcrumb.scss / c-button.scss 等)
Project
– いくつかのComponentと他の要素で構成されるモジュールを定義します。
(p-ranking.scss / p-modal.scss等)
Utility
– ComponentやProjectで解決できないスタイル調整を定義します。
(u-clearfix.css や u-spacer.css等)

3-1. FLOCSSの記述法

FLOCSSではクラスの命名規則にBEMを採用しています。さらにクラスが属しているレイヤーによって、接頭辞(プレフィックス)を付与します。

・ Componentなら「 .c- 」
・ Projectなら「 .p- 」
・ Utilityなら「 .u- 」

記述サンプル例:
FLOCSSの記述サンプル

3-2. FLOCSSのメリット

・ クラスにFLOCSSの接頭辞をつけることで、クラスの役割が予測しやすい。どこでも流用できるComponentなのか、ページ独自のProjectなのか、一目で判断できるので非常に便利です。

・ 定義済みのCSSがレイヤー構造から把握できるので、検索がしやすく再利用も容易です。

・ CSSファイルをレイヤーで細かく分割することで、ページ数の多い大規模サイト制作でもスタイルの管理が容易になります。

おわりに

今回は「CSS設計」の手法からBEMとFLOCSSについて紹介しました。

これらの手法は知っておくと非常に便利なものではありますが、自己流のやり方でもサイト制作は可能です。そのため「今はまだ使わなくていいや」「学習コストがかかりそう」と敬遠しがちです。しかし、WEBデザイナーとして日々の業務を効率良く行う上では、欠かせないスキルです。

今まで意識せずに書いていた方は、一度経験すればその便利さを実感することができます。
ぜひWeb制作に取り入れてみてください。


弊社では士業やメディア、医療関係を中心にサイト制作を行っております。webサイトについてお悩みのある方はお気軽にお問い合わせください。

HTML5の廃止、次の主流は?

 

人によっては今更な話題かもしれませんが、”HTML5”は今年に入ってから廃止されていたことをご存知ですか?

 

そもそも”HTML5”とはW3Cが策定していたHTMLのバージョン5となる改訂版のことですが、2021年1月28日付で無効=廃止され、”HTML Living Standard”が新しくHTMLの主流、標準規格となりました。

 

 

1. HTML5廃止の経緯

W3CがWHATWGのHTML Review Draftを推奨勧告したことにより、WHATWGの策定していた”HTML Living Standard”がHTML技術仕様の標準規格となりました。(W3Cニュース

 

”HTML5”はW3Cが仕様策定・勧告を進めてきました。

このW3Cとは別にApple, Mozilla, Operaが設立したWHATWGという団体が独自に策定を進めているHTML仕様が”HTML Living Standard”です。

 

まとめると、

HTML5           → W3Cが策定。
HTML Living Standard → WHATWGが策定。2021年1月にW3CがHTML標準として推奨。

 

W3Cとは

World Wide Web Consortium(ワールド・ワイド・ウェブ・コンソーシアム)は、World Wide Webで使用される各種技術の標準化を推進する為に設立された標準化団体、非営利団体である。

(Wikipedia)

 

WHATWGとは

W3Cが策定したXHTMLや、W3Cがウェブ開発者の要望を軽視していることなどを不満に思ったApple、Mozilla、Operaの開発者たちによって2004年に結成された[1]。2017年末にはMicrosoftも参加している。

(Wikipedia)

 

2. ダブルスタンダードからシングルに

W3CとWHATWGは今まで協力して進めることもあったようですが、進め方の相違から別々に仕様を決めるようになり、いわばダブルスタンダードな状況が生じていました。

 

HTML技術仕様書が二つ存在して、大まかには同じ内容だけど細かなところで微妙に異なっている、なんて開発者泣かせな状況ですよね。

 

どうしてそのような状況になったかというと、両者の進め方の違いが大きかったと言われています。

 

最終勧告により、きちんとドキュメント等々も整備しオフィシャルなものとして発行したかったW3Cと、ウェブ開発者の要望目線でより現場主義感が強く、順次アップデートすることで日々進化を求めたWHATWG。

 

・W3Cではバージョン管理
作業草案→勧告候補→勧告案→勧告で段階を踏んで完成版の仕様を策定

 

・WHATWGでは日々改訂・修正・強化がはかられる
“HTML Living standard”は日々アップデートされ続ける仕様を目標

 

またWHATWGは主要ブラウザを抱えています。Safari、Firefox、ChromeはWHATWGの仕様に沿って開発されていたとのことなので徐々に影響力を増していくことは想像に難くないですね。

 

3. HTML5との違いは?

現状基本的に大きな差異はありません。しかしながら、”HTML Living Standard”は日々更新されるので常にアップデートの波に乗れるよう注目です。

 

今後はHTMLでなにかチェックしたいことがあれば従来のW3C仕様書ではなく、”HTML Living Standard”の仕様書をチェックしにいくようにしましょう。

 

HTML Living Standardの仕様書

HTML Living Standardの仕様書 日本語訳

 

 

 

弊社では士業やメディア、医療関係を中心にサイト制作を行っております。webサイトについてお悩みのある方はお気軽にお問い合わせください。

JPG、GIF、PNG、SVG、WebPのメリット・デメリット

 

 

みなさんは画像を書き出しする際、保存方法はどうしてますか?

今回はJPG、GIF、PNG、SVG、WebPの各ファイル形式の違いをご紹介します。

 

1.JPGについて

JPGって?

JPEGとは、静止画像のデータ圧縮形式の一つ。フルカラーの画像を多少の劣化を伴いながら高い圧縮率で符号化できるのが特徴で、写真など自然画像の記録に向いている。ファイル名の標準の拡張子は「.jpg」あるいは「.jpeg」。

引用元:IT用語辞典e-Words/JPEGとは

 

JPGのメリット

フルカラー1677万色で表示できるため、写真の色がきれいにでます。

JPGのデメリット

非可逆圧縮の性質上、圧縮するたびに画質が劣化します。
そのため複数回にわたって編集が必要なものはJPGじゃないほうがよいと言えます。

 

2.GIFについて

GIFって?

GIFとは、画像データを圧縮して記録するファイル形式の一つ。256色までの画像を無劣化(lossless)で圧縮することができ、図やイラストなどの画像に向いている。ファイル名の標準の拡張子は「.gif」。

引用元:IT用語辞典e-Words/GIFとは

 

GIFのメリット

色数が限定されている為、軽いです。
色数は256色がmaxなので、アイコンやボタンデザインなど色が少なくてすむパーツの書き出しに適しています。

軽いので簡単なアニメーションも作成可能です。

GIFのデメリット

メリットでもありますが、色数が少ないことがデメリットです。

 

3.PNGについて

PNGって?

PNGとは、画像データを圧縮して記録するファイル形式の一つ。フルカラーの画像を無劣化(lossless)で圧縮することができ、図やイラストなど向いている。ファイル名の標準の拡張子は「.png」。

引用元:IT用語辞典e-Words/PNGとは

PNGのメリット

・可逆圧縮なので、劣化せずに保存のし直しができます。

・背景の透過ができます。

・ベタ塗りのイラストなどは高画質で軽い画像に保存ができます。

・色数が選べます。
PNG-8:GIFと同じ256色
PNG-24:フルカラー1677万色可能

PNGのデメリット

写真の画質が高くなるので、重くなってしまいます。風景や人物などの色が多い写真はJPGで書き出したほうが無難です。

 

4.SVGについて

SVGって?

SVGとは、XMLの記法を用いて画像を図形の集合として表現する記述言語の一つ。2次元のベクター形式の画像ファイル形式の一つでもあり、ファイルに保存する場合の標準の拡張子は「.svg」。

引用元:IT用語辞典e-Words/SVGとは

 

SVGのメリット

上記3つのファイル形式に対し、SVGはベクターデータです。
拡大しても劣化がなく、きれいに表示ができます。

パスで作成したアイコンやロゴなどに適しています。

SVGのデメリット

写真には使用できないため、使用は限定的になります。

 

5.WebPについて

WebPって?

WebPは、Web上の画像に優れた可逆および非可逆圧縮を提供する最新の画像形式です。WebPを使用すると、WebマスターとWeb開発者は、Webを高速化する、より小さく、よりリッチな画像を作成できます。

WebPロスレス画像は、PNGと比較してサイズが26%小さくなっています。WebPの不可逆画像は、同等のSSIM品質インデックスで同等のJPEG画像よりも25〜34%小さくなり ます。

ファイルに保存する場合の標準の拡張子は「.webp」。

引用元:Google Developers

 

WebPのメリット

・とても軽く保存ができます。

・背景透過が可能です。

WebPのデメリット

IE以外の主要ブラウザには対応しているものの、画像編集ソフトからは書き出しができません。

書き出しは以下の手順で可能です。
・編集ソフトからJPG、PNGなどで保存する・
Squooshに保存した画像を入れて、保存形式「webp」を選択する。

おわりに

今回はJPG、GIF、PNG、SVG、WebPの違いや使い方について紹介致しました。
きれいで出来るだけ軽い保存方法を心がけていきましょう。

 

弊社では士業やメディア、医療関係の制作実績もありますので、Webサイトについてお悩みがある方は、お気軽にお問い合わせください。

【2021年】商用利用できる無料のフリーアイコン・イラスト配布サイトまとめ

みなさんはフリー素材や写真素材はどこで探していますか?

 

Web制作において欠かせない、画像やアイコンを探す作業って案外面倒ですよね。

今回はそんな時に便利な著作権表記不要で会員登録不要のフリー素材配布サイトをご紹介します。

アイコン、イラスト素材

ICOOON MONO

ICOOON MONO

とにかく種類が豊富です。無難なアイコンを探している際には便利なので、まずICOOON MONOで検索してみると良いでしょう。

 

データ形式:PNG/JPG/SVG

 

Icon rainbow

Icon rainbow

アイコンの種類が豊富です。ICOOON MONOとはテイストが違いますので、制作しているサイトの雰囲気に合わせて使い分けると便利です。

 

データ形式:PNG/JPG/SVG

 

iconmonstr

iconmonstr

データ形式が豊富で、どんな場合でも使用することができます。メリハリのついたアイコンが魅力です。

 

データ形式:PNG/SVG/EPS/PSD

 

EXPERIENCE JAPAN PICTOGRAMS

EXPERIENCE JAPAN PICTOGRAMS

日本の文化に特化したアイコンが多くあります。観光サイトなどを作成する際にはぜひ利用してみてください。

 

データ形式:PNG/SVG

 

icon-pit

icon-pit

シンプルで細い線が特徴です。細い線のアイコンを探す機会って意外と多いんですよね。そんな時に利用してみてください。

 

データ形式:PNG/AI

 

シルエットイラスト

シルエットイラスト

とにかく色んな種類のアイコンがあります。上記で紹介しているサイトにも無いようなニッチなアイコンもあったりするので、「探しているアイコンが無い!」という時にはシルエットイラストで検索してみると良いかもしれません。

 

データ形式:PNG/AI

 

フリー素材 ブログ

フリー素材 ブログ

アイコンだけではなくイラストも扱っています。種類も多く、同じアイコンでもパターン違いを多く配布していたりするので非常に便利です。

 

データ形式:PNG/JPG/SVG/EPS

 

icon-icons

icon-icons

カラーアイコンが豊富です。そのデザインは非常に細かく、色使いも丁寧で種類も豊富なのでアイコンを大きく見せたい時には非常に便利です。

 

データ形式:PNG/SVG/ICO/ICNS

 

イラスト配布サイトまとめ

Linustock

Linustock

細い線画が魅力的なイラスト配布サイトです。シンプルかつ繊細なデザインなのでこのイラストを使うだけでサイトがグッとオシャレに見えますね。

 

データ形式:PNG/EPS

 

ManyPixels

ManyPixels

イラスト配布サイトには珍しく、SVG形式でデータを配布しています。また、サイト内で好みの色に変更することもできるのでデザインに合わせて色味を自由に変更することが可能です。

 

データ形式:PNG/SVG

 

素材Good

素材Good

可愛い素材が多く配布されています。また、ラベル素材やフレームなども配布しているのでLP制作の際には非常に役立ちます。

 

データ形式:PNG/JPG/GIF/EPS

 

イラストの里

イラストの里

イラストの種類が多く、ニッチなイラストも多いのでPOP作りやチラシ広告を作成する際に便利です。

 

データ形式:PNG

 

いらすとや

いらすとや

フリー素材といえばいらすとや。と言っても良いほど有名なサイトです。こちらもPOPやチラシ広告を作成する際に便利です。

 

データ形式:PNG

 

おわりに

今回は私がWeb制作の際によく利用するフリー素材配布サイトを、私のオススメ順に紹介しました。他にもよく利用するフリー写真サイトやコーディングの際に便利なジェネレータもあるので、それはまた別の機会にまとめたいと思います。

 

今回ご紹介したサイトを是非みなさんのWeb制作にお役立てください。

弊社では士業やメディア、医療関係の制作実績もありますので、Webサイトについてお悩みがある方は、お気軽にお問い合わせください。

デザイナーが覚えておくべきデザインの基本ルール

 

DOLのWebデザイナーは皆、デザインとコーディングの両方を手掛けています。

 

これまで様々な業種のクライアントからサイト制作の依頼を受けてきましたが、デザインとコーディングいずれの作業においても、その進行にあたっては様々な課題に直面します。

 

コーディングの課題においては有用な書籍や解説サイトがたくさんありますし、スニペットや完成コードをコピーして解決できることもあります。経験を積んでノウハウを蓄えれば、解決のスピードはどんどん上がっていきます。

 

しかし、デザインに関してはそうはいきません。参考になるデザインを見た所でコピーできるものではありませんし(絶対にしてはいけません)、経験を積んだとしてもすぐに答えを導き出せるものではありません。

どのようなデザインにするかという課題はレイアウト、書体、配色、写真など一つ一つの要素に対して、答えを決めていく作業です。無数にある選択肢の中から答えを導き出すのは困難ですが、基本的な知識や考え方を知ることで、選択肢を減らすことができます。

 

今回はデザイナーが覚えておくべきデザインの基本ルールについて紹介いたします。

1. 解決する問題を意識する

そもそもデザインで迷う原因は何でしょうか?「デザイン」の定義について調べてみます。

 

Wikipediaでは以下のように記されています。

 

デザインとは具体的な問題を解き明かすために思考・概念の組み立てを行い、それを様々な媒体に応じて表現することと解される。

『デザイン – Wikipedia』より

 

また、グッドデザイン賞を運営する日本デザイン振興会では以下のように定義しています。

 

常にヒトを中心に考え、目的を見出し、その目的を達成する計画を行い実現化する。

『デザインとは? | 公益財団法人日本デザイン振興会』より

 

これらを読むと、デザインとは単純に「見た目」のことを指しているのではなく、「問題解決」や「設計」といった意味も含んでいることがわかります。つまり、デザインで「見た目」を考える際は「問題解決」に結びついているか、ということを常に意識しなければなりません。

 

デザインに迷いが生じているのは、単純に「見た目」だけを考えて「問題を解決する」視点が抜けているのかもしれません。デザイン作業で手を動かしていると、ビジュアルを作り込むことにこだわりがちですが、それがどのような問題解決に結びついているのかを忘れないようにしましょう。

2. ターゲットを決める

「誰に届けるのか」を考えることはデザインを作る上での原点です。

 

なるべく多くの人に届けようとすると、誰にも刺さらないデザインになります。デザインをする際は、届けたい相手が誰なのかを理解することが重要です。

 

デザインの方向性が定まらない、しっくりこない時は、ターゲットが見えていない、もしくは絞り込めていない可能性があります。デザイン作業では「誰に何を伝えたいのか」「どんな行動をさせたいのか」、ターゲットを常に意識するクセをつけましょう。

3. 情報を整理する

3-1. デザインの5W1H

「デザインの5W1H」とは「When(いつ)」「Where(どこで)」「Who(だれが、だれに)」「What(なにを)」「Why(なぜ)」「How(どのように)」と情報を分類、整理する手法です。

 

クライアントと打ち合わせをしたら、まずは「デザインの5W1H」に従って情報を整理しましょう。情報を整理することで、何を最優先に伝えるべきかを考えることができます。デザインに迷いがある時は、情報がきちんと整理されているか、優先順位を付けられているかを確認してみましょう。

 

3-2. 引き算で考える

情報を整理して優先順位を付けても、いざビジュアル制作に入るとあれもこれもと情報を足したくなります。しかし、人は一度に大量の情報を受け止めることはできません。また、情報を詰め込みすぎてしまうと、クライアントが本来一番伝えたかった内容がぼやけてしまいます。

 

デザイナーはクライアントが一番伝えたい情報が何なのかを理解して、受け止めることができる量に調整することが求められます。足し算ではなく、引き算で考えることを意識しましょう。

4. 基本原則を知る

デザインで考えるべきことはたくさんありますが、すべてを一から考えていたら大変です。デザインには基本的な原則や型が存在するので、今回はその一部を紹介します。まずは基本を理解して試行錯誤の回数を減らしましょう。

4-1. デザインの4原則

■ 近接
関連する情報をまとめてグループ化することです。バラバラに配置された情報は、一つ一つ読み解く必要がありますが、情報がグループ化されていると瞬時に理解することができます。

■ 整列
すべての要素を意識的に配置することです。整列されていれば要素と要素が離れていても、それを結び付ける透明な線が一体感を生み出します。空いたスペースに何となく置くのはやめましょう。

■ 反復
太字、色、罫線など同じデザイン要素を繰り返し使うことです。繰り返すことで一貫性が生まれます。Webサイトの場合、どのページに移動しても同じサイトと認識できるように反復を用います。

■ コントラスト
情報の優先度が異なる場合は、はっきり違わせるということです。色や太さだけでなく、背景や書体など大胆に変化を付けましょう。コントラストは面白みを作り出し、人を読ませる気にさせます。

4-2. 構図の基本

■ 孤立した構図
強調したい要素の周囲に余白を大きく設けることで目立たせる方法です。
孤立した構図
■ 日の丸構図
中央に円を配置することで、メッセージを伝わりやすくする構図です。
日の丸構図
■ 三角構図
三角の形に要素を配置して視線を誘導させます。三角は安定感と落ち着いた雰囲気を生み出します。
三角構図
■ 2分割
左右または上下に2等分する構図です。安定感と適度な緊張感を生み出します。
2分割
■ シンメトリー
仮想の軸を置いて、そこを中心に要素を配置します。左右対称のレイアウトで安定感があります。
シンメトリー
■ 反復
同じ要素を繰り返して配置します。商品を並べる一覧ページなどに効果的です。
反復

4-3. 写真の使い方

■ 角版
写真を「四角形」の状態で使うことで、もっとも頻繁に用いられる方法です。四角自体がシンメトリーになっているので、安定感と落ち着きのある印象を与えることができます。
角版
■ 切り抜き
被写体を輪郭に沿って切り抜く手法のことです。背景をなくすことで被写体を大きく配置することができます。切り抜かれた外形はそれぞれ異なるので、動きのあるポップな表現ができます。
切り抜き
■ 裁ち落とし
写真を大きくレイアウトし、余白をなくした使い方です。写真の魅力を最大限に引き出すレイアウトで、ダイナミックな印象を与えることができます。
裁ち落とし

おわりに

今回はデザイナーが覚えておくべきデザインの基本ルールについて紹介しました。

 

デザインにはコーディングのような明確な答えは存在しませんが、基本ルールを身に付けることで悩みの解決スピードを向上させることができます。今回紹介したもの以外にも様々なルールが存在しますが、それはまた別の機会に紹介したいと思います。この記事がデザイン作業で悩んでいる方にとって、解決の糸口になりましたら幸いです。

 

Webサイトの立ち上げや改修にあたって、デザインでお悩みの方はお気軽にご相談ください。

 

参考文献:
『デザインノート No.78』
『デザインの基本ノート 仕事で使えるセンスと技術が一冊で身につく本』尾沢早飛・著
『ノンデザイナーズ・デザインブック』Robin Williams・著

 


webデザイナーが知っておきたい開発環境

 

基本のコーディングに慣れてきたところで次のステップとして効率の良い開発環境を模索する方、仕事で使われていて習得する必要のある方、新たな手法に興味津々な方、とアプローチは何であれ、

 

耳慣れない用語に対して、何となくそのままにしてしまってはいませんか。理解への最初のステップとして、よく使用される用語の概念をざっくりと整理してみました。

1.webデザイナーの定義?

webデザイナーという職種には明確な定義がなく、どこまで業務を受け持つかは会社によるところも多いのではないでしょうか。そのため個々人のスキルセットも多様化しているように感じます。

 

デザイン専門のwebデザイナーもいれば、ディレクション〜デザイン〜構築まで幅広く担当するwebデザイナーや、プログラマー並みに実装が得意なwebデザイナーなど様々存在すると思います。

 

マルチスキルでいくのか、何かに特化したいのか、目指す方向性によっても変わってきますよね。

 

2.進むのが早いwebの世界

そうした少しずつ異なるスキルセットのwebデザイナーがいるなかで、サイト制作というのは一つの共通した作業目的です。(例え自分で構築はしないというタイプであっても、一連の工程を理解し、用語を把握しておくことは大事ですよね。)

 

webの世界は進むのが早いとよく言われるように、日々進歩する開発環境においても、gulpやnpmなど、デザイナーにとっては馴染みのない単語が増えてきました。

 

作業を効率化すべく日々使用&取り入れているエンジニア、一方でデザイナーにとっては確認・編集ベースでの作業や業務上の連携で知っておかねばならない程度がほとんどで、デザイナー(非エンジニア)にとっては学習のハードルが高くなっているのではないでしょうか。

 

馴染みのない事柄へは誰しも少しは抵抗を感じてしまうかもしれませんが、web業界へ身を置く人は特に、未知への抵抗感を減らし積極的に取り込んでいく姿勢を身につけることがメリットになると思います。

 

こうしたwebのフロントエンド環境について、どのようなものがあるのか、一部を紹介しなから整理していければと思います。

 

・拡張機能Pug, Sassの登場

webサイト制作において、基本的にはHTML, CSSのファイルがあれば、見た目のしっかり整ったものが作成できますよね。

 

ところがページ数の多い大規模サイトだったり複雑な技術を使用するサイト構築では、より効率の良いやり方が必要となってきます。

 

そこでよく使用されるのがPugとSassではないでしょうか。

Pug  → HTMLの拡張(HTMLを効率よく書くためのテンプレートエンジン)

Sass → CSSの拡張(CSSを効率よく書くための言語)

 

HTML,CSSと違ってPugとSassがどう便利なのか?例えば、従来のCSS記述では「この色を変えたい!」となった際に対象カラーのCSSコードをファイルから抽出し、逐一変更しなければなりませんでした。

一方で変数を用いるSass記法では変数の値を変更するだけで事足ります。これだけでも凄い作業効率の良さを感じられることと思います。

 

・拡張機能の問題点

しかしPugやSassにも問題点がありました。

それはそのままの記述ではブラウザが認識してくれない、というものです。

開発環境を整えてせっかく効率よくコードを書いたのに、最後は基本のHTML,CSSの記述に変換しなくてはならないのです。

 

・問題点を解決するgulp, npm

そこで登場するのがgulp、npmです。

gulp → SassをCSSへ、PugをHTMLへコンパイルする

npm → gulpを管理・操作する

※コンパイルとはプログラミング言語で書かれたソースコードをコンピュータが理解できるコード(実行可能な形式)へ変換すること

 

PugやSassで書いたコードをHTML,CSSへ変換してくれるのがgulp、そのgulpを操作できるのがnpmということですね。

 

また、gulpはNode.jsをベースとしたタスクランナー(自動処理ツール)の一つなので、使用するにはまずNode.jsをインストールするところから始めねばならないですが長くなるので今回は割愛します。

 

3.おわりに

効率化させるための手法→問題点→改善手法という形でどんどん洗練されたやり方が確立されていく様を追うことで体系が見えてきました。ですが頭で理解することと実際に使いこなせるかどうかは別物で、実際に使いこなせて初めて理解に近づくということもあります。日頃から触れるよう心がけ、実践へと活かしていきましょう。

 

弊社では士業やメディア、医療関係を中心にサイト制作を行っております。webサイトについてお悩みのある方はお気軽にお問い合わせください。

色のユニバーサルデザイン

 

人にはさまざまな色の見え方があります。
自分が見ている色は、他人が見ている色と違う色に見えているかもしれません。

 

例えば、
黒板に赤文字で書いている文字は、一般的に重要な要点を書いていることがあります。
しかし、深緑の黒板に赤色の文字は、色弱(色覚異常)の方には見えづらく感じることがあるのです。

 

 

 

1. 色弱ってなに?

人間の網膜には、3つの錐体がありますが、この3つが1つでもうまく働いていないと色が見えにくくなります。遺伝によって、2つしかなかったり1つしかなかったりします。

 

遺伝以外では、病気・怪我・ストレスなどで色が見えにくくなることもあります。

 

さらに、歳をとるとさまざまな目の機能が低下し見えにくくなります。(老眼)

 

2.日本人の色弱の方の人数は?

日本人の場合、日本人男性の5%(20人に一人)。
女性は0.2%500人に一人)。

男性に関しては、高確率で色弱の可能性があります。そのため、デザインする際には色の組み合わせを考えてデザインした方がいいときもあるのです。

 

3.色弱の方はどんな色が見えにくい?

赤系と緑系の区別がつきにくい

 

オレンジと黄緑の区別がつきにくい

*茶色はオレンジに黒を混ぜた色です。

 

 

青と紫の区別がつきにくい

 

 

グレーとの組み合わせ(ピンク or 水色 or 緑 + グレー)が見えにくい

 

ピンクと水色の区別がつきにくい

 

赤と黒の区別がつきにくい

 

4.ユニバーサルデザインとは

ユニバーサルデザインとは、最初からすべての人々にとって使いやすく設計されたものです。
あるものを改良していくのではなく、最初からみんなにとって使いやすいように設計していくことで、多くの人が快適に過ごせるようになります。

ユニバーサルデザインの先駆け「normalization / ノーマライゼーション」

障がい者を排除するのではなく、障がいを持っていても健常者と均等に当たり前に生活できるとような社会こそがノーマルな社会である。

  バンク・ミケルセン(1950年 / デンマーク)

 

ユニバーサルデザインとバリアフリーデザインの関係性

 

バリアフリーデザインは、障がい者や高齢者、妊婦さんに対するデザインを指します。
ユニバーサルデザインはその方たちも含む全ての人々を指し、国籍や性別も関係なく使いやすいデザインのことです。

5.おわりに

見る人によって、色の見え方がさまざまであることがわかりました。
重要な情報は色だけのデザインで伝えるのではなく、文字をしっかりと見やすく書くなどユーザーが困らないようなデザイン設計を心がけていきたいです。

 

出典:色彩検定UC級公式テキスト

 

弊社では士業やメディア、医療関係を中心にサイト制作を行っております。webサイトについてお悩みのある方はお気軽にお問い合わせください。

Illustratorについて~基本の使い方~

デザイナーにとって欠かせないツールの一つ、Illustratorの使い方について説明します。

Illustratorの特徴

Illustratorはベクトル形式で描写します。複雑な画像よりも、主にロゴやイラストを作成するツールとして用いられます。

ベクトル形式

画像のアウトラインをアンカーと呼ばれる座標と、セグメントと呼ばれる線や数式によって表す形式です。Illustratorの他に、Canvas、CorelDRAW、Inkscapeなどもベクトル形式を採用しています。

長所

拡大・縮小・変形しても画質が崩れません。

短所

多彩な色表現が苦手です。そのため写真などの複雑な画像を作成する際は向いていません。

図形作成のポイント

Alt(Option)+ドラッグ

Alt(Option)+ドラッグを押しながら描くと、中心から描けます。

Shift+ドラッグ

Shift+ドラッグを押しながら描くと、縦横比を固定して描けます。

↑↓キー

ドラッグ中に↑↓キーを押すと、オブジェクトの角の増減ができます。

パスの構造

直線による図形は、アンカーポイントと、ポイント同士を結ぶセグメントで構成されています。楕円のような曲線による図形は、アンカーポイントから方向線が伸びています。

ダイレクト選択ツールにてアンカーポイント、セグメント、ハンドル(方向点)を移動することができます。

段落パネル

1.インデント

字下げの設定をします。1行目左インデントに、文字サイズ1字分の距離を指定すると冒頭1字下げの体裁になります。

 

2.間隔の調整

段落前の空きを調整します。

3.禁則処理

「、」「。」や()、約物などを行頭や行末にくることを禁止する処理を禁則処理と言います。「強い禁則」では「ゃ」「っ」などの拗促音や「ー」も禁則処理対象になります。

4.自動ハイフネーション

英文の長い単語が行末にきた場合に、単語の適切な箇所にハイフンを挿入します。

文字パネル

1.フォントサイズ

フォントサイズを設定できます。

2.行送り

行送りを設定できます。日本語の場合、読みやすいサイズは文字サイズの50と言われています。行送りでいうと1.5になります。(縦読みは50%100%、横読みは50%75%に設定すると読みやすいです)

3.垂直比率

文字の通常の高さを基準にして拡大、縮小します。

4.水平比率

文字の通常の幅を基準にして拡大、縮小します。

5.カーニング

カーニングとは、文字同士の間隔を調節する技法のことです。カーニングを行わない場合、文字の間に不自然な空白を招いてしまうこともあります。また、文字間隔が等間隔でも不自然に見えてしまう場合もあり、その際は不均等に間隔を広げることでバランスよく読みやすいテキストに認識されます。調節する際は目視で文字列を確認しながら行います。

操作方法は、文字と文字の間にカーソルを置いて、個々の文字間隔を詰めたり空けたりします。タイトルや見出し文字など、大きいサイズで文字組みする場合に使用したりします。

 

6.自動カーニング

文字全体を選択して「メトリクス」や「オプティカル」、「和文等幅」を選ぶと、文字幅に応じたカーニング設定が自動で行うことができます。

メトリクスカーニングフォントデザイナーが計算した文字ツメを行います。ペアカーニング情報(Wa、We、Ya、Yo、Taなど文字間に関する情報が含まれた物)に基づいて最適な文字詰をします。

https://www.thinkforme-design.com/post/metrics-optical_02

オプティカルカーニングIllustratorが判断して文字ツメを行います。隣り合った文字間を、文字の形に基づいて調整することができます。ペアカーニング情報が含まれていないフォントの場合、こちらを使用します。日本語フォントではペアカーニング情報を持ったタイプはほとんどありません。

https://www.thinkforme-design.com/post/metrics-optical_02

7.トラッキング

複数の文字を選択して、一律に文字間隔を詰めたり空けたりできます。

8.文字ツメ

文字と文字との間隔を詰めます。間隔を空けることはできません。

9.アキを挿入

文字の前後左右に空きを設定することができます。

10.ベースラインシフト

ベースラインの位置を文字ごとに設定することができます。

11.文字回転

角度指定で文字を回転させることができます。

12.グリフにスナップ

文字にスナップを設定すると、オブジェクトを文字に近づけた際にガイドラインが表示されます。

詳しくはこちら:オブジェクトをグリフにスナップ

様々なツール

はさみツール

アンカーポイントやセグメントの分割したい箇所をクリックすると、パスが分割されます。

ナイフツール

オブジェクトの上をドラッグすると、分割されます。フリーハンドで自由に分割することができます。

連結

オープンパスの端点をくっつけたい時に使用します。くっつけたいアンカーポイントをダイレクト選択ツールで選択し、メニューバーの「オブジェクト」「パス」「連結」を選択します。

平均

揃えたいアンカーポイントをダイレクト選択ツールで選択し、メニューバーから「オブジェクト」「パス」「平均」を選択します。複数のアンカーポイントを選択して水平軸で揃えることもできます。

リフレクトツール

オブジェクトを線対称に反転します。左右もしくは上下対称にオブジェクトを作成することができます。

シアーツール

オブジェクトを傾けたり歪ませる時に使用します。オブジェクトに影を作りたいときに便利です。

グラデーションメッシュツール

グラデーションメッシュツールは光沢感や立体感を出したいときに使用します。メッシュラインと呼ばれる網目のパスを操作し、高度なグラデーションを作成することができます。

メッシュツールを使ってオブジェクトをクリック、もしくはメニューバーの「オブジェクト」「グラデーションメッシュを作成」を選択します。メッシュポイントはアンカーポイントと同じように方向線を使って編集できます。

グラデーションの設定

フラット:オブジェクトの塗りが均一でハイライトはありません。

中心方向:オブジェクトの中央にハイライトを適用

エッジ方向:オブジェクトの輪郭線にハイライトを適用

ダイレクト選択ツールでメッシュポイントを選択して色を白に変更すると、光が当たった立体的なオブジェクトを作ることができます。

透明パネル

オブジェクトの不透明度に関する設定ができます。不透明マスクを作成することもできます。

不透明マスクの作成:オブジェクト(四角)の上にオブジェクト(丸)を重ね、両方のオブジェクトを選択します。透明パネルのメニューから不透明マスクの作成を選択します。

ショートカットキー

よく使用するショートカットキーをまとめました。

ファイル

新規ドキュメントの作成 Ctrl(⌘)+N
ドキュメントを開く Ctrl(⌘)+O

ツールの持ち替え

選択ツール V
ダイレクト選択ツール A
ペンツール P
文字ツール T
拡大、縮小ツール L
グラデーションツール G

画面表示

全体表示 Ctrl(⌘)+O
100%(実寸)で表示 Ctrl(⌘)+1
ガイドをロック Alt+Ctrl+;/Option+⌘+;
ガイドを解除 Alt+Ctrl+5/Option+⌘+5
定規を表示・隠す Ctrl+R/⌘+Option+R

オブジェクト

塗りと線を切り替える X
オブジェクトを隠す Ctrl+3/Option+⌘+3
全て表示 Alt+Ctrl+3/Option+⌘+3
クリッピングマスクの作成 Ctrl(⌘)+7
クリッピングマスクの解除 Alt+Ctrl+7/Option+⌘+7

オブジェクトの重ね順

最前面 Ctrl(⌘)+Shift+]
前面へ Ctrl(⌘)+]
背面へ Ctrl(⌘)+[
最背面 Ctrl(⌘)+Shift+[

おわりに

今回はIllustratorの基本操作の一部についてまとめました。バージョンがアップされると機能も追加されていきますが、基本的な操作は変わりません。ツールがたくさんあるため最初は使い方に迷ってしまいますが、各ツールの意味を理解して使いこなしていけばイラストやバナーの装飾など、様々なタッチで描くことができます。

弊社では士業やメディア、医療関係の制作実績もありますので、Webサイトについてお悩みがある方は、お気軽にお問い合わせください。

SassやPugをコンパイルしてくれる便利なアプリ『Prepros』使ってますか?

Prepros』というアプリをご存知ですか?

 

PreprosはWeb開発の際に使用する言語を自動でコンパイルしてくれるGUIツールです。他にも様々な便利機能が搭載されているため、使いこなせれば開発スピードは格段にアップするでしょう。

 

今回はPreprosの基本的な機能をご紹介します。

 

Prepros(プリプロス)とは

先述の通り、Preprosは様々な言語をコンパイルしてくれるGUIツールです。

 

ダウンロード先:https://prepros.io/downloads

対応環境:macOS,Windows,Debian Linux

言語:英語のみ

料金:基本無料(無料版ではポップアップが表示されます。)

Preprosでできること

1.ファイルをコンパイル

Preprosは「Sass」「Less」「Stylus」「Pug(Jade)」「Haml」「Slim」「CoffeeScript」「TypeScript」をコンパイルすることができます。さらにはJavaScriptをバンドルすることも可能です。

ここでは難しいことは説明しませんが、gulpを使用する時のような小難しい設定の必要はなく、黒い画面で指示を出す必要もありません。

2.コードの問題を見つける

記述したコードに問題がある場合、問題のあるコードがどこにあるのかを一目で教えてくれます。同時に作業ログを残すことも可能です。コードに問題がある場合はポップアップが表示されるのでエラーを未然に防ぐことができます。

3.プレビュー機能

Preprosにはhttpおよびhttpsサーバーが組み込まれており、ボタン一つでブラウザプレビューが可能です。さらにはMAMPなどの外部サーバーからページをプロキシすることも可能です。

モバイル端末でのプレビューにも長けており、QRコードを読み込むか、もしくは記載されたURLを打ち込むだけで、手持ちのモバイル端末でプレビューを確認することが可能です。

Preprosはコードを変更するたびに、PC、モバイル端末全てが自動で更新されます。

4.自動ブラウザリロード

例えばCSSで文字のサイズを変更したとすると、CSSファイルを保存したと同時にプレビュー画面が自動で更新されます。

スタイルを変更するたびにページを更新する必要がないのはとても便利ですね。

 

5.圧縮と最適化

JSファイル、CSSファイルの圧縮、さらには画像の最適化を自動で行ってくれます。その際の設定も簡単で、ボタン一つで長い長いコードを一行に圧縮してくれます。

gulpの場合、minファイルの書き出し先や改行を消す設定を黒い画面を使って行っていましたが、Preprosの場合、Minify CSSにチェックを入れてProcess Fileをクリックするだけで指定した箇所に自動で圧縮ファイルを作成してくれます。

Minify CSSにチェックを入れてProcess Fileをクリック

 

CSSファイルに書いたコードが

 

minファイルを自動で作成し、1行に圧縮されます。

 

6.FTPアップロード

Preprosで展開しているファイルをFTP、SFTPを使用してサーバーにアップロードすることができます。

保存したファイルをわざわざFTPソフトを使用してアップする必要はありません。サーバー情報を入力したらあとはアップロードボタンを押すだけです。さらにはUpload Automaticallyにチェックを入れておけば、ファイルに変更があるたびに自動でサーバーにアップロードされ、ローカル環境とサーバー内を常に同期することができます。

おわりに

今回はPreprosでできることを簡単に紹介してみました。まだ書きたいことはたくさんありますが、全て書いてしまうととんでもない長さになってしまうので今回はここまでといたします。

私としてはこんなに便利なツールは他にないと思っているので、この先どんどん深掘りしてPreprosの便利さを普及させていきたいと思います。

 

弊社では士業やメディア、医療関係の制作実績もありますので、Webサイトについてお悩みがある方は、お気軽にお問い合わせください。