対象: ウェブデザイン技能検定2級を受験する方(平成30年度第2回 学科試験)
難易度: ★★★
所要時間: 約30分
平成30年度第2回の学科問題を、全40問すべて理由つきで解説します。
1. 2択問題(正しい=1、間違い=2)
第1問: VDT作業に従事する者の心身の負担を軽減するためには、事業者が作業環境をできる限りVDT作業に適した状況に整備するとともに、VDT作業が過度に長時間にわたり行われることのないように適正な作業管理を行うことが重要である
答え: 1(正しい)。労働安全衛生の観点から示されているVDT作業ガイドラインの趣旨そのままの説明です。作業環境の整備と、作業時間が過度に長くならないよう管理することの両方が重要とされています。
第2問: HTML5.2では、dl要素の内部にdiv要素を配置することができる
答え: 1(正しい)。HTML5.1以降の仕様変更により、dl要素の内部でdiv要素を使ってdt要素とdd要素をグループ化できるようになりました。
第3問: SQLiteはスマートフォン専用のリレーショナルデータベース管理システムである
答え: 2(誤り)。SQLiteはスマートフォン専用ではなく、デスクトップアプリやブラウザ内蔵DB、組み込み機器まで幅広く使われている軽量なリレーショナルデータベースです。
第4問: アクティブではないユーザインタフェース部品の文字については、4.5:1のコントラスト比がなくてもよい
答え: 1(正しい)。JIS X 8341-3(WCAG)の達成基準1.4.3「コントラスト(最低限)」では、無効化された(非アクティブな)ユーザインタフェースコンポーネントの文字はコントラスト比の要求から除外されています。
第5問: コーディング規約を作る際、命名規則として「upper camel case」を採用することにした場合には、「SubText」という文字列での命名は適切である
答え: 1(正しい)。Upper Camel Case(パスカルケース)は単語の先頭を大文字にして区切り文字なしでつなげる命名規則です。「SubText」は「Sub」「Text」の先頭がどちらも大文字になっており、この規則に沿っています。
第6問: 同じ画像であっても、その画像の用途や役割によって、指定すべき代替テキストの内容は変化することがある
答え: 1(正しい)。代替テキストは画像そのものの説明ではなく、その画像がページの中でどんな役割を果たしているかを説明するものです。同じ画像でも、装飾目的なのかリンクボタンなのかによって適切な代替テキストは変わります。
第7問: CSSで使用される単位「px」は、CSSの初期のバージョンでは相対単位に分類されていたが、CSS2.1以降では絶対単位に分類されている
答え: 1(正しい)。pxは元々「相対単位」として扱われていましたが、CSS2.1以降の仕様では「絶対単位」として再定義されています。
第8問: HTTP通信において、GETはHTTPメッセージヘッダの第2行目に記される
答え: 2(誤り)。GETはHTTPリクエストの1行目(リクエストライン)に記されます。「GET /path HTTP/1.1」のように、メソッド名はメッセージの先頭に置かれ、2行目ではありません。
第9問: ウェブサーバなどの処理能力を向上させるため、CPUのスペックを上位のものに交換したり、メモリを増設することをスケールアウトと呼ぶ
答え: 2(誤り)。CPUやメモリなど1台のサーバ自体の性能を強化する手法は「スケールアップ」です。「スケールアウト」はサーバの台数を増やして全体の処理能力を上げる手法を指します。
第10問: ドライブバイダウンロード攻撃とは、ウェブページにマルウェアを埋め込んでおき、アクセスしてきたユーザに気づかれないように、そのマルウェアを自動的にダウンロードさせる攻撃である
答え: 1(正しい)。ドライブバイダウンロード攻撃の一般的な定義そのままの説明で、正しい内容です。
第11問: HTMLドキュメント内でPHPコードを扱う場合、「<!–」と「–>」の2つのタグで囲む必要がある
答え: 2(誤り)。PHPコードは<?phpと?>で囲みます。「<!–」「–>」はHTMLのコメントを表す記法であり、PHPを実行するためのタグではありません。
第12問: IPv4のIPアドレスは32bitである
答え: 1(正しい)。IPv4アドレスは32bit(4バイト)で構成されます。
第13問: リセットCSSとは、ウェブブラウザのデフォルトのスタイル設定を上書きし、ブラウザ間の表示や動作の差異を無くすためのスタイルシートのことである
答え: 1(正しい)。リセットCSSの一般的な定義通りの説明です。
第14問: SFTPとSSHで使用するポート番号は同じである
答え: 1(正しい)。SFTPはSSH上で動作するプロトコルのため、通常はSSHと同じポート番号(22番)を使用します。
第15問: 2018年4月現在、HTML 4.01はW3C勧告の中でも「W3C Superseded Recommendation」に分類され、HTML5に取って代わられた古いバージョンの仕様として位置付けられている
答え: 1(正しい)。HTML 4.01は2018年4月時点で、W3Cの仕様一覧上「Superseded Recommendation(後継仕様に置き換えられた勧告)」として扱われ、HTML5に置き換えられた過去の勧告として位置付けられていました。
2. 選択問題
第16問: HTML5において、ファイル名をマークアップするのに適している要素はどれか
- ①b要素
- ②i要素
- ③code要素
- ④span要素
答え: ③。code要素は「コンピュータが認識する文字列」を表す要素で、ファイル名やプログラムコードの一部などをマークアップするのに使われます。①bは単なる太字強調、②iは専門用語や慣用句など意味を伴わない斜体表現向け、④spanは特定の意味を持たない汎用インライン要素です。
第17問: ウェブコンテンツやアプリケーションのアクセシビリティおよび相互運用性を向上させるためのフレームワークを提供する技術仕様はどれか
- ①Landmark
- ②WAI-ARIA
- ③Live Region
- ④Web Accessibility Initiative
答え: ②。WAI-ARIAは、ウェブコンテンツやアプリケーションのアクセシビリティ・相互運用性を向上させるための技術仕様として定義されています。①Landmarkと③Live RegionはいずれもWAI-ARIAが提供する機能の一部であり、④Web Accessibility InitiativeはW3C内の取り組み(組織)の名称であって、技術仕様そのものを指す言葉ではありません。
第18問: 冗長化されていないRAID構成はどれか
- ①RAID 0
- ②RAID 1
- ③RAID 5
- ④RAID 6
答え: ①。RAID 0はストライピングのみでパリティやミラーリングを持たないため、ディスク故障に対する冗長性がありません。RAID 1(ミラーリング)、RAID 5・RAID 6(パリティ)はいずれも冗長性を備えています。
第19問: 次に示したのは、ウェブコンテンツJIS(JIS X 8341-3)の達成基準1.3.2である。[A]にあてはまる語句として、最も適切なものはどれか
![JIS X8341-3 達成基準1.3.2「意味のある[A]の達成基準」の空欄穴埋め問題を示した図](https://design-levelup.com/wp-content/uploads/2018/11/b7c833bf26bc2036dc5b35c2d77bd9d8.39.png)
- ①構造的領域
- ②グリッド位置
- ③方向
- ④順序
答え: ④。達成基準1.3.2「意味のある順序」は、「コンテンツが提示されている順序が意味に影響を及ぼす場合には、正しく読む順序はプログラムによる解釈が可能である」と定義されています。
第20問: JavaScriptでエラーになるものはどれか

答え: ②。constで宣言した変数は再代入できません。②のconst a = 1; a = 2;は再代入エラー(TypeError: Assignment to constant variable.)になります。①③④はvar・letによる宣言、あるいは再宣言なしの通常の再代入のため、エラーにはなりません。
第21問: jQueryを用いた次のコードを、querySelectorを用いて記述したものはどれか

- ①var obj = document.querySelector(‘.button’);
- ②var obj = document.querySelectorAll(‘button’);
- ③var obj = document.querySelectorAll(‘.button’);
- ④var obj = document.querySelector(‘button’);
答え: ③。$('.button')はクラス名buttonを持つ要素を(1つでも複数でも)すべて取得します。ネイティブのDOM APIで複数要素をまとめて取得するメソッドはquerySelectorAllで、クラスを指定するセレクタは先頭に.が必要です。したがってdocument.querySelectorAll('.button')が正しい変換です。①は単一要素しか取得しないquerySelector、②④はクラスセレクタの.が抜けており、元のコードと等価にはなりません。
第22問: 画像処理におけるモスキートノイズの説明として、適切なものはどれか
- ①主に画像の輪郭部分に発生するノイズのこと
- ②主に画像の中央部に発生するノイズのこと
- ③左右対称の画像を圧縮した場合の左右の違いのこと
- ④異なる2つの画像を圧縮した際に同一の画像になること
答え: ①。モスキートノイズは、JPEGなどの非可逆圧縮において、輪郭付近など高コントラストな部分の周囲に蚊(モスキート)の羽音のようなノイズが発生する現象を指します。
第23問: HTML5において不適切なimg要素の記述はどれか
- ①<img src=”a.png” alt=””>
- ②<img src=”a.png” alt=”” width=50 height=50>
- ③<img src=”a.png” alt=”” width=”50″ height=”50″>
- ④<img src=”a.png” alt=”” width=”50%” height=”50%”>
答え: ④。HTML5の仕様上、width・height属性の値は非負の整数(ピクセル数)でなければならず、パーセント指定は無効です。①②③はいずれも整数のみ、または属性そのものを省略した記述のため文法上の問題はありません。
第24問: HTMLドキュメントのbutton要素(id属性”button”)に、次のようなJavaScriptコードでonclickイベントハンドラを定めた。このボタンをクリックしたときの動きとして最も適切な説明はどれか

- ①ダイアログは開かずにエラーになる。
- ②「second」の警告ダイアログだけが開く。
- ③「first」の警告ダイアログだけが開く。
- ④「first」の警告ダイアログが開いて、閉じると「second」の警告ダイアログが開く。
答え: ②。同じイベントハンドラプロパティ(onclick)に複数回代入すると、後から代入した関数で上書きされます。ここではalert('second')を設定する行が最後に実行されているため、クリックすると「second」の警告ダイアログだけが開きます。
第25問: PHPで次のコードを実行した結果はどれか

- ①{“web”:”design”,”id”:1}
- ②{“web”:”design”}
- ③{“Web¥Design”,”id”:1}
- ④{“Web¥Design”}
答え: ①。この問題のポイントは名前空間です。namespace Web¥Design;の中で独自に定義されたjson_encode関数は、名前空間を指定せずに呼び出すとPHPはまず現在の名前空間内の関数を優先して解決します。そのためprint json_encode($data, 1);は組み込みのjson_encode関数ではなく、直前で定義されたWeb¥Design¥json_encodeが呼ばれます。この関数は引数$val(['web'=>'design'])に$val['id'] = $id($idには2番目の引数の1が渡される)を追加してから、先頭に¥を付けた¥json_encode($val)(グローバル名前空間の本来のjson_encode関数)を呼び出します。結果として$valは['web'=>'design','id'=>1]となり、出力は{"web":"design","id":1}になります。
第26問: MIMEタイプの説明として適切なものを、以下より1つ選択しなさい
- ①type=htmlやtype=gifのように記される。
- ②text/htmlやimage/gifのように記される。
- ③CSSファイルにはMIMEタイプがないためHTML5では記述しない。
- ④RFCでは規定されていないが安全のために記述することが多い。
答え: ②。MIMEタイプは「タイプ/サブタイプ」の形式(例: text/html、image/gif)で記述されます。
第27問: DNSにおいて、名前に対応するIPアドレスを記述するレコードはどれか
- ①Aレコード
- ②CNAMEレコード
- ③NSレコード
- ④MXレコード
答え: ①。ホスト名をIPv4アドレスに変換するのがAレコードです。②CNAMEは別名の指定、③NSは権威DNSサーバの指定、④MXはメールサーバの指定に使われます。
第28問: 「特定商取引法」における電子メールの広告規制に関する記述として誤っているものを、以下より1つ選択しなさい
- ①消費者からあらかじめ請求や承諾を得ていない限り、電子メール広告の送信は原則的に禁止されている。なお、携帯電話等のショートメールサービスを利用した広告は、規制の対象とはならない。
- ②事業者が送信する電子メール広告には、消費者が当該電子メール広告の送信を拒否する意思を表示するための方法を表示しなくてはならない。
- ③電子メールアドレスまたはURL等は電子メール広告の本文に記載しなくてはならず、かつ消費者が容易に認識できるように表示しなくてはならない。
- ④電子メール広告を送信することについて消費者からの請求や承諾を受けた場合は、その記録を、電子メール広告を最後に送った日から3年間保存しておかなくてはならない。
答え: ①。特定商取引法における電子メール広告は、原則としてオプトイン規制(あらかじめ請求・承諾を得た相手にのみ送信可能)が適用されます。この規制は通常の電子メールだけでなく、携帯電話などのショートメッセージサービス(SMS)を利用した広告にも及びます。①の後半にある「ショートメールサービスを利用した広告は規制の対象とならない」という部分が誤りです。
第29問: バージョン管理システムに関する記述として誤っているものはどれか
- ①ソフトウェアやライブラリの依存関係を解決できる。
- ②変更内容の差分を表示できる。
- ③集中管理方式と分散管理方式の二つのタイプがある。
- ④変更を加えたファイルを過去のある時点の状態に復元することができる。
答え: ①。ソフトウェアやライブラリの依存関係解決は、npmやComposerなどのパッケージ管理システムの役割であり、Gitなどのバージョン管理システム自体の機能ではありません。②差分表示、③集中管理・分散管理の2方式が存在すること、④過去の状態への復元は、いずれもバージョン管理システムの基本的な機能です。
第30問: body要素にimg要素(id属性”photo”)を加え、次のようなJavaScriptコードで、画像をクリックするたびに4つの写真を順に切り替えたい。このとき、[A]から[D]のいずれにも使われない項目はどれか
![クリックのたびに4枚の画像を順に切り替えるJavaScriptコードの空欄[A]〜[D]穴埋め問題を示した図](https://design-levelup.com/wp-content/uploads/2018/11/84555d9f2c012a192c599f1f844fdb03.26.png)
- ①++
- ②%=
- ③image
- ④setAttribute
答え: ③。空欄には、++currentNum;(インクリメント)、currentNum %= files.length;(配列の範囲内で循環させる剰余代入)、photoElement.setAttribute('src', photo);(表示中の画像を切り替える処理)が入ります。実際に使われている属性名はsrcであり、選択肢にある「image」という文字列はコード中のどこにも使われません。
第31問: 次のコードはメディアクエリの記述である。[A]の部分として適切なものはどれか
![link要素のmedia属性に入れるメディアクエリの空欄[A]穴埋め問題を示した図](https://design-levelup.com/wp-content/uploads/2018/11/fd86d2d547fd37aa763a7faa5734fb10.19.png)
- ①only screen(min-width:600px)
- ②screen and (min-width:600px)
- ③screen with (min-width:600px)
- ④screen and print and (min-width:600px)
答え: ②。メディアクエリでメディアタイプとメディア特性を組み合わせる場合は、screen and (min-width:600px)のようにandで連結します。①のonlyはメディアタイプの前に付ける修飾子であり、括弧を直接続ける書き方はできません。③のようなwithという接続キーワードはメディアクエリの構文に存在しません。④はprintまで対象に含めてしまい、意図している「画面(screen)のみ」という条件と異なります。
第32問: ウェブサイトでの通信販売を行う際、特定商取引法によって表示を求められているものとして誤っているものはどれか
- ①個人事業者の場合には、氏名または登記された商号、住所および電話番号。
- ②返品を認めるか否か、その際の条件は何か、送料の負担の有無等。
- ③ソフトウェアに関する取引を行う場合には、当該ソフトウェアの動作環境。
- ④各表示事項をすべてまとめた「特定商取引法に基づく表示」という専用ページ。
答え: ④。特定商取引法が求めているのは、事業者名・返品条件・動作環境など個々の表示事項の開示であり、それらを1つの専用ページにまとめること自体が法律上の要件になっているわけではありません(実務上「特定商取引法に基づく表示」というページ名で一括掲載されることが多いだけです)。
第33問: ウェブブラウザのコンソールに文字列や数字を出力するJavaScriptコードはどれか
- ①document.write()
- ②window.alert()
- ③console.write()
- ④console.log()
答え: ④。ブラウザのコンソールに出力するにはconsole.log()を使います。①document.write()はHTML文書に直接書き込むメソッド、②window.alert()はダイアログを表示するメソッドで、③console.write()という関数は存在しません。
第34問: ファイル名を指定せずにアクセスがあった場合、index.phpを優先する.htaccessの設定として適切なものを、以下より1つ選択しなさい
- ①DirectoryIndex index.html index.php
- ②DirectoryIndex index.php index.html
- ③Directory index.html index.php
- ④Directory index.php index.html
答え: ②。DirectoryIndexディレクティブは、記述した順番に優先度が決まります。index.phpを優先したい場合は、DirectoryIndex index.php index.htmlのように先頭に書きます(③④のDirectoryはディレクティブ名として誤りです)。
第35問: PHPにおいて、配列($arr)の最後にデータを追加する方法として、適切なものを以下より1つ選択しなさい
- ①$arr[-1] = 1;
- ②$arr[0] = 1;
- ③last($arr[]) = 1;
- ④$arr[] = 1;
答え: ④。PHPで配列の末尾に要素を追加するには、$arr[] = 値;という記法を使います。①はマイナスのキーに直接代入するだけで末尾への追加にはならず、②は常にキー0を上書きし、③last()という組み込み関数は存在しません。
第36問: iframe要素が使用できないHTMLのバージョンはどれか
- ①HTML 4.01 Strict
- ②HTML 4.01 Transitional
- ③XHTML 1.0 Transitional
- ④HTML5
答え: ①。iframe要素は、HTML 4.01のStrict DTD(厳格な文書型定義)には含まれておらず使用できません。Transitional系のDTDやHTML5では使用可能です。
第37問: 次の文章は、ウェブサイトの掲載内容に関するものである。[A]にあてはまる語句として適切なものを、以下より1つ選択しなさい
![他社商品の2倍の内容量であるかのように表示した場合の違法性を問う、法律名の空欄[A]穴埋め問題の文章を示した図](https://design-levelup.com/wp-content/uploads/2018/11/d589b334938289c1220204ef1f732f5e.30.png)
- ①商標法
- ②製造物責任法(PL法)
- ③不当景品類及び不当表示防止法(景品表示法)
- ④特定電気通信役務提供者の損害賠償責任の制限及び発信者情報の開示に関する法律(プロバイダ責任法)
答え: ③。他社商品と同程度の内容量にもかかわらず、あたかも2倍の内容量であるかのように表示することは、実際より著しく有利であると誤認させる表示、つまり不当景品類及び不当表示防止法(景品表示法)の「有利誤認表示」に該当します。
第38問: 変数checkBoxには、type属性を”checkbox”に定めたinput要素の参照が納められている。このチェックボックスがチェックされているかどうかを、次のJavaScriptコードで変数checkResultに取得したい。[A]に加える適切なプロパティを、以下より1つ選択しなさい
![var checkResult = checkBox.[A]; というチェックボックスの状態取得コードの空欄穴埋め問題を示した図](https://design-levelup.com/wp-content/uploads/2018/11/98b849a978e37acbb3e14521af7800f2.55.png)
- ①checked
- ②selected
- ③value
- ④on
答え: ①。チェックボックスがチェックされているかどうかを取得するにはcheckedプロパティを使います。②selectedは<option>要素向けのプロパティ、③valueはチェック状態にかかわらず値そのものを返し、④onというプロパティは存在しません。
第39問: クラウドサービスの中で、主にアプリケーションソフトウェアを提供するサービスを指す用語はどれか
- ①DaaS
- ②SaaS
- ③PaaS
- ④IaaS
答え: ②。アプリケーションソフトウェアを提供するクラウドサービスはSaaS(Software as a Service)です。①DaaSはデスクトップ環境、③PaaSはアプリケーションの実行基盤、④IaaSはサーバ・ストレージなどのインフラを提供するサービスです。
第40問: JavaScriptで変数aが「7」という文字であると判定を行う条件式はどれか
- ①a = “7”;
- ②a == “7”;
- ③a === “7”;
- ④a ==== “7”;
答え: ③。===は値だけでなく型も比較する厳密等価演算子です。変数aが数値の7ではなく文字列の”7″であることまで確認したい場合はa === "7"を使います。==(②)は型変換を行うため、数値の7が入っていても真になってしまいます。①a = "7";は代入であって比較ではなく、④====という演算子はJavaScriptに存在しません。

