Webヒント

引用を示す要素

引用を示す場合は、ブロックレベル要素を含む・含まないに応じてblockquote要素、またはq要素を用いることになります。
blockquoteやq要素では、cite属性で引用元のURI(リソースの所在や名前)と、title属性で引用元の説明情報を示すことになっているのですが、主要な視覚環境のUAにおいてはcite属性、title属性で示された情報が視覚的に表され、それをハイパーリンク等で利用できるようにはなっていません。
そこで、cite要素と組み合わせて視覚的に出典元や引用元を示したい場合、blockquote要素やq要素内に引用ではない出典元・引用元についての情報を含めることなく、それでいて引用のブロックとして関連付けられるようなマーク付けをおこなうのが妥当です。

<cite>HTML Specification</cite>にはcite要素について 引用や他のソースへの参照を含む引用や他のソースへの参照を含む と説明があります。

HTML Specification for the cite element. Contains a citation or a reference to other sources


--- model sentence code---
<dl class="quote">
<dt>Barack Obama氏の<cite>2004年7月27日 民主党全国大会 基調演説</cite>より抜粋</dt>
<dd>
    <blockquote title="Barack Obama氏の2004年7月27日 民主党全国大会 基調演説">
    <p>I say to them tonight, there's not a liberal America and a conservative America.</p>
    <p>There's the United States of America.</p>
    <p>There's not a black America and white America and Latino America and Asian America.</p>
    <p>There's the United States of America.</p>
    </blockquote>
</dd>
</dl>
Barack Obama氏の2004年7月27日 民主党全国大会 基調演説より抜粋

I say to them tonight, there's not a liberal America and a conservative America.

There's the United States of America.

There's not a black America and white America and Latino America and Asian America.

There's the United States of America.

classセレクタ

class属性によって特定のclass名がつけられた要素を対象にスタイルを適用するセレクタです。
class属性はid属性とは異なり、1つの文書内で同じclass名を重複して指定することができます。
classセレクタを使用することで、文書内の複数箇所や異なる要素に対して同じスタイルを適用することができます。

■セレクタの書式・<style>スタイルを適用する対象

書式
.クラス名 {プロパティ名:値;}
適用対象
クラス名を付けた要素

cssで〇印リストlist-style-typeなど

list-styleのcss

<style>タグは、スタイルシートを記述する際に使用

<div>タグは、ひとかたまりの範囲として定義する際に使用

divとsectionとarticle要素それぞれの特徴

div要素

div要素は最も汎用的な要素で、特別ではない意味を持っています。つまり、意味的に関係していないコンテンツをまとめる、ということになります。
div要素内のコンテンツは本質的に無意味なものであるため、多用ぜずに限られた箇所のみに使うべきです。

section要素

section要素はdiv要素より、目的がはっきりしています。意味的に有意義な方法でグループ化されたコンテンツの一般的なセクションに適用され、見出し要素の利用が強く推奨されています。
section要素のコンテンツは有意義であるため、テーマを持っているべきです。section要素のテーマとは、sectionタグのすぐ後に続いて定義されるべきです。

article要素

article要素はsection要素より、さらに使い方が特定されます。意味的に関連したコンテンツのセクションに適用します。そして、このコンテンツのセクションは独立しているべきです。つまりarticle要素のコンテンツは、ページの残りから隔離されても意味を持つことが可能であることを意味します。
article要素のよくある目的は、コンテンツのマーキングです。例えば、ブログの記事にマークを付けます。

class グローバル属性

class グローバル属性 は、要素のクラスを空白区切りで並べたリストで、大文字小文字を区別します。クラスは CSS の クラスセレクター や JavaScript の DOM メソッド document.getElementsByClassName といった関数により、特定の要素を選択したり特定の要素にアクセスしたりすることを可能にします。



UP

Japanプレゼンテーション

2021

Bar à Vin, Japan!

日本では人を求めてバーに行くという、理由はには独特なの文化がある。 たとえば、よいバーテンダーが一番みたいな感覚がありこの店のカクテルが飲みたいという思いを。しかし、同じカクテルでもバーテンダーによって味が変わるということは、遭ってほしくない。

Spirit

私は、アルコールや堕落よりも、妻と子供が欲しいという願望によって台無しにされた男性の方がはるかに多いのを見てきました。
ウィリアムバトラーイェイツ
ワインは悲しみを慰め、老人を若返らせ、若者を鼓舞し、落ち込んでいる人を心配の重さから解放します。
バイロン卿
戦後、私には2つの選択肢がありました。国会議員としての人生を終わらせるか、アルコール依存症として終わらせるかです。私は自分の選択をうまく導いてくれた神に感謝します。私はもはや国会議員ではありません!
ウィンストンチャーチル
何を見ていますか ?それはロードマップですか?- 番号 !これはワインリストです。これは渋滞を避けるためです!
レーモン・ドゥヴォス
牛がぶどうを食べる日にミルクを飲みます。
ジャン・ギャバン
私はアルコールで私の悲しみを溺れさせようとします、しかしその時以来…彼は泳ぐことを学びました、私の悲しみ。
フィリップ・グルック
ワインを引くときは、特にそれが良い場合は、飲む必要があります。
マルセル・パニョル
ここでは保安官はイケム、リオブラボーはシロン、そして金はソーテルヌと呼ばれています。
ジョン・ウェイン
フランス人は彼らのワインをとても誇りに思っているので、彼らは彼らの町のいくつかにグランクリュの名前を付けました。
オスカーワイルド
ワインと幸福をつなぐ引用 私は喫煙、飲酒、セックス、そしてごちそうをやめた男性を知っています。彼は自殺するまで健康でした。
ジョニー・カーソン
ワインに関しては、名声よりも喜びを優先する方法を知っている必要があります。
ポール・クローデル

UP »

Vin

ワインが人間の生産から姿を消した場合、健康と知性に空白が生じ、過剰なワインが有罪とされるすべての過剰よりも恐ろしい不在になります。
シャルル・ボードレール

ボジョレーのように若く、ブルゴーニュのように年をとるように努力する必要があります。
ロベールサバティエ

View details »

Canapés

Une fine tranche de pain enrobée de pâte ou garnie de divers ingrédients. Le mot original signifie "canapé", mais il est également dit que la raison pour laquelle il a été utilisé comme terme de cuisine est que le pain est placé dessus comme une chaise. Il s'utilise en hors-d'œuvre en associant plusieurs types de manière colorée, ou en plat léger pour un cocktail. Couper du pain ou du pain noir sur une épaisseur de 4 à 5 mm, faire des petits carrés, rectangles, losanges, cercles, etc., selon la matière à poser dessus, et faire frire dans des toasts ou du beurre clarifié.

View details »

role="presentation"

role="presentation"の意味は、仕様書からの引用ですが、下記のようになっています。
表現的なロール(role)を持ち、アクセシビリティAPIにマッピングする必要がない要素。
このロール(role)の用途としては、要素がページの見た目を変えるために使われているが、
その要素タイプによって示唆される機能的、構造的、またインタラクション上の重要な意味はない場合が挙げられる。
要するに、見ためのために設置している要素が対象ということになります。例えば、装飾目的の画像などです。
下記に仕様書に載っていた使用事例を記述します。
・表現的なコンテンツの要素(スペーサーの画像、装飾的なグラフィック、クリアリングのための要素など)
・CSSの"フック"となる付加的なマークアップとして使われている要素
・レイアウトテーブル

W3Cによると["presentation"]はロールのセマンティクスを無効にしますが、内容には影響しませんと書いてあるがよくわからない、
つまりセマンティクスは”データの意味”という意味なのでウェブの有用性に向上役立てる

参照サイトから

Webアクセシビリティが向上する!HTMLのrole属性の使い方を解説

HTML: アクセシビリティの基礎
ページレイアウト
古き悪しき時代には、HTML テーブルを使って (つまり、ヘッダー、フッター、サイドバー、主要コンテンツの列、などなどを含む、別々のテーブル・セルを使って)、
ページレイアウトを作成していたものです。これは良い考えではありません。なぜなら、スクリーンリーダーが、こんがらがった読み上げを発する可能性が高いからです。
特に、レイアウトが複雑で多くの入れ子になったテーブルがある場合には、そうなりがちです。

UP »

表現的なコンテンツの要素

これは、すぐに理解できると思います。メインビジュアルなど装飾目的の画像等です。装飾目的の画像には、alt="" として、空の代替テキストを指定をしますが、こういう画像等が対象です。

<img src="image.png" role="presentation" alt="" />

CSSの"フック"となる付加的なマークアップとして使われている要素

「CSSの"フック"となる」というちょっと分かりづらい表現で書かれていますが、僕は、こういう解釈としています。

Web Designer Wallという非常に有名なブログがあります。多くの方が一度は見た事があると思います。このブログで数年前に、以下のようなエントリーがありました。

CSS Gradient Text Effect

今では、CSS3によってCSSだけでグラデーションを表現できるようになっていますが、当時は、グラデーションを表現するためには、画像を用意する必要があり、それをタイポグラフィで使うためには、完全に画像でやるしかありませんでした。

それをCSSのみでグラデーションの効果のあるテキストができるというテクニックが紹介され、当時は色んなブログで紹介されていました。

その表現のためのマークアップが下記のようになります。

<h1><span></span>CSS Gradient Text</h1>

グラデーションを表現するために、空のspan要素を入れているのが分かると思いますが、表現のために、文章構造上に意味の無いHTML要素を記述しています。これが「CSSの"フック"となる付加的なマークアップ」という解釈に近いと思っています。

この解釈が合っていれば、こういった場合にrole="presentation"を使います。

<h1><span role="presentation"></span>CSS Gradient Text</h1>

レイアウトテーブル

推奨されませんFlexboxなどをこちらをご覧くださいスマホ対応する

テーブルレイアウトのほうが馴染みがあるかもしれませんが、レイアウトテーブルはtable要素をレイアウトとして使う手法です。

今では、多くのデザイナーが忌み嫌うものですが、role="presentation"は、レイアウトテーブルに非常に効果を発揮すると感じました。レイアウトテーブルの場合には、下記のようにrole="presentation"を追加します。

<table role="presentation">
<tr>
<td>ヘッダー</td>
</tr>
<tr>
<td>メイン</td>
</tr>
<tr>
<td>フッター</td>
</tr>
</table>

レイアウトテーブルは、SEOやアクセシビリティを考えた時にマイナス要因だと言われていることから使われなくなってきたことでもあり、 また、複雑に入れ子になったようなレイアウトだとアクセシビリティの低下になるのは事実です。

レイアウトテーブルを使ってデザインをすることは無くなってきていると思いますが、まだレイアウトテーブルで作成するという案件はあったりすると思います。 しかし、レイアウトテーブルにrole="presentation"を追加することによって、アクセシビリティを低下させることがなくなります。role="presentation"は、以下のような効果があるとのことです。仕様書からの引用です。

テーブルがpresentationとマークされている場合、
ユーザーエージェントは、table、td、th、trなどの要素をアクセシビリティAPIマッピングから取り除き、
そのなかに入っている個々のテキスト要素だけを残すことができる。
これにより、テーブルで示唆された構造的側面を無視してもよいことがユーザーエージェントに分かるようになるため、
レイアウト目的でテーブルを使っても害がなくなる。

上記のことから複雑な入れ子になったレイアウトでもアクセシビリティの低下が防げるということになります。

案件によって、レイアウトテーブルでやらなければならない場合があったりするかと思いますが、こういった場合にtable要素にrole="presentation"を追加することによって、フルCSSで作成されたのと同じ効果をスクリーンリーダーを使っているユーザーは、得れるということになります。

最後に

これまでrole="presentation"は、装飾目的の要素が対象と思っていたのですが、レイアウトテーブルがこのような効果があるのかと、これがWAI-ARIAの力なのかと凄く感動した次第です。

レイアウトはCSSでやることにこしたことはありません。しかし、レイアウトテーブルで行う事になった場合には、role="presentation"を使うことによってアクセシビリティを低下させることがなくWebサイトができるということは非常に大きなことだと思いました。


<table role="presentation">テーブル下の<caption>表題の例

報道

衆院選2021

<td>第49回衆議院選挙は10月19日公示され、31日の投開票に向けて選挙戦は終盤に入りました。
総定数465議席に1051人が立候補。新型コロナや経済への対策が主な争点で、岸田文雄政権の信任を問います。</td>
<td>今回の衆院選に立候補した女性は186人で、全候補者に占める割合は17.7%と2割に満たない。
日本の衆院議員の女性比率は先進国で最低水準の1割程度だ。
過去8回の衆院選データからは女性の政治進出を巡る地域差が浮かび上がる。
今回の衆院選に立候補した女性は186人で、全候補者に占める割合は17.7%と2割に満たない。
日本の衆院議員の女性比率は先進国で最低水準の1割程度だ。
過去8回の衆院選データからは女性の政治進出を巡る地域差が浮かび上がる。</td>

令和3年


UP

<=おもしろ&参考サイト

<=おもしろ$サイト

<=小粋なHPを作る小技・裏技$サイト

ホームページを小粋に 初心者の方にもわかりやすいHPの小技・裏技。タグをコピーして貼り付けるだけでおしゃれなページに変身します。

© 2020 Company, Inc.