無料コーディング練習所、完成しました!
『無料コーディング練習所』完成しました😄 入門編から上級編まで6サイトあります。すべてデザインカンプ&コーディングデータ付きです。https://t.co/pFyWS1wOpv
無料なのでよかったら気軽にやってみてください👍 pic.twitter.com/RP4vChxptN
— ねこポン@フリーWebデザイナー (@webdesigner_go) April 19, 2022
無料コーディング練習所が完成しました!完全無料のコーディング教材です。デザインカンプ・完成版コーディングデータ付きです。ぜひ取り組んでみてください。
このサイトでは、本当にWebデザインのスキルを磨きたいなら、未経験の方はまずはWeb制作会社か教育体制のしっかりしている事業会社に正社員で入社することを強くオススメしています。
やはり派遣でもなく、アルバイトでもなく、長く在籍する可能性のある正社員にこそ成長できるお仕事を振ってくれるのです。派遣やアルバイトは、リンク張り替えやテキスト修正など成長しづらい作業をやらされがちです……。
未経験OKで正社員のWebデザイナー・フロントエンドエンジニア案件を多く保有しているのが、IT系に強い『ワークポート』です。ワークポートでも、さすがに未経験の方にWeb制作会社を紹介するのは難しいですが、事業会社のWebデザイナー・フロントエンドエンジニアを紹介してもらえる可能性があります。また、Webデザイナーにこだわらなければ、WebディレクターやECサイト担当者などの求人も多数保有しているため選択肢の幅が広がります。一度面談を受けておきましょう。
また、Web/IT系特化の転職サイト『Green』にも登録しておきましょう。Web系転職の定番サイトです。
「デザインスキルを一気に上げる方法は「レビュー」です。つまりデザインに対するダメ出しを何度もしてもらって直すことを繰り返すことで、デザインスキルは急激にレベルアップします!
これを一番実現しやすいのが会社です。会社なら現場で上司や先輩にサイトやバナーのデザインのレビューをしてもらえるからです。じゃあ就職しておらず未経験のうちはどうすればいいかというと、「レビュー付きのデザインスクールの活用」です。普通のスクールはPhotoshopの使い方やコーディングの基礎を学ぶだけで「デザインスキル」についてはほぼ教えてくれません。レビュー付きのデザインスクールは運営側にも高いデザインスキルが求められるため非常に少なく希少性が高く『fullme』が現在は最高峰だと僕は思っています。「けっきょく、よはく」「ほんとに、フォント」など有名デザイン書籍を手がけるingectar-eの運営です。
僕が駆け出しの頃に『fullme』があれば絶対に受講していました...。デザインスキルを高めたい人はぜひ受講しましょう。
「ポートフォリオを作ってみたけど不安...」「周りにレビューをしてくれる人がいない...」
そんなお悩みを解決するために、ポートフォリオのチェックリストを作りました!27,000文字以上の大ボリュームです笑。noteで販売中です。激安のワンコイン500円です。このチェックリストで改善点を見つけて、少しでもポートフォリオの質を上げて、自分が望む就職に繋げましょう!
ねこポンさん初めまして!
Webデザイナーを目指している20代後半の主婦(2歳子持ち)です。
さっそくねこポンさんの無料コーティング練習所を活用させていただいています!
初級編「START」の制作過程での質問なのですが、CSSで.wrapperにoverflow-x: hidden;を適用されていますが、SP版の右側余白を無くす為にしているという認識でよかったでしょうか?
また、右側に余白ができる原因を自分なり調べていたのですがわからず…。
そちらも併せて教えていただけると勉強になります。よろしくお願いします。
ねこポンさんのサイトは有益な情報が満載で、本当に助かっています。
これからも運営頑張ってください^^
らんままさん、はじめまして!
無料コーディング練習所をやってくれてありがとうございます!
>初級編「START」の制作過程での質問なのですが、CSSで.wrapperにoverflow-x: hidden;を適用されていますが、SP版の右側余白を無くす為にしているという認識でよかったでしょうか?
その通りです!具体的には、TOPページのサービスセクションの「SERVICE」の文字が画面からはみ出すことによって右側に余白を作ってしまうので、それを防ぐために.wrapperにoverflow-x: hidden;を指定しています。もちろん、.wrapperではなく.contentにoverflow-x: hidden;を指定してもいいのですが、今後ページ内で他にも何かがはみ出してしまうことを想定して、ページ全体を囲っている.wrapperに対してoverflow-x: hidden;を指定しています。こういう指定はたまに見かけますね。
なので、右側に余白ができる原因は、サービスセクションの「SERVICE」の文字が右側にはみ出るせいです。記事に書いておくべきでしたね。。追記しておきます。
サイトも褒めていただき嬉しいです^^ぜひ初級編以降もやってみてください。またご質問があればいつでもコメントをください。
ねこポンさん
お返事ありがとうございます!
なるほど、それが原因だったのですね。理解が深まりました*
初級編以降もすべて行う予定です。
また質問させてください♪
ご丁寧にありがとうございました^^
ねこポンさん初めまして
49summerと申します。
こちらのサイトで勉強させてもらっています。いつもありがとうございます。
質問ですが、コーディング練習をした、無料コーディング練習所のサイト(たとえば)ですが、自分のポートフォリオに掲載する場合は「こちらのデザインをコーディングしたものはポートフォリオやブログへ掲載していただいてOKです。」ということなので、そのまま掲載してよいということでしょうか?
ただ、気になるのが、後述に
①掲載する際は『無料コーディング練習所』へリンクを貼る
②デザインを変えず再配布や販売する行為は禁止
とございますので、
まず①のリンクを貼る具体的な手順を教えていただきたいというのと、
②についてはデザインを変えないと(つまり使用している画像を自前のものにする?)いけないという認識なのでしょうか?
その点をお手数をおかけしますが、教えて下さいますよう、お願いします。
49summerさん、はじめまして。
こちらにコメントをいただきありがとうございます。
無料コーディング練習所を活用していただいて嬉しいです。
>コーディング練習をした、無料コーディング練習所のサイト(たとえば)ですが、自分のポートフォリオに掲載する場合は「こちらのデザインをコーディングしたものはポートフォリオやブログへ掲載していただいてOKです。」ということなので、そのまま掲載してよいということでしょうか?
はい、そのまま掲載してOKです。
①「掲載する際は『無料コーディング練習所』へリンクを貼る」具体的な手順
ご自身の作品ページ内に無料コーディング練習所へのテキストリンクを貼っていただければ大丈夫です。例えば、作品の画像の近くに「この作品は『無料コーディング練習所』のデザインをコーディングしたものです」等とリンク付きで記載してください。とにかくリンクさえしてもらえれば特にリンクの形式は問いません。いわゆるクレジット表記ですね。この作品は完全にオリジナルのものではなく、無料コーディング練習所を活用して制作したものだときちんと書いてほしいという意図です。
②「デザインを変えず再配布や販売する行為は禁止」についてはデザインを変えないと(つまり使用している画像を自前のものにする?)いけないという認識なのでしょうか?
その通りです。さすがに再配布や販売をする人はあまり想定していませんが、、再配布や販売、あるいは自分がデザインした作品であると公にアピールするのであれば、デザインデータ内で使用している画像はご自身で用意していただき差し替える必要があります。あまり無いとは思いますが、このデザインデータを使ってお客さんのサイトを作るケースもあるかもしれません。その場合ももちろんですが画像はちゃんと差し替えて使ってください、という話です。
①も②についても、たまに見かけて衝撃的なのが、無料コーディング練習所のことを何も書かず、つまりクレジット表記をせずに自分の作品として公開してしまっている人がいることです。それはさすがに悲しすぎます…。そういった行為を防ぐ意味でも、きちんとリンク付きで無料コーディング練習所を活用して作っていることを明記してほしいんです。
ねこポンさん、ご返信ありがとうございます!
よく理解出来ました!
①も②もしっかりルールに則ってこれからも活用させていただきます!
引き続きよろしくお願いいたします。
ねこポンさん、初めまして。らいちょうと申します。
いつも記事楽しみにしています!
こちらの練習所でコーディングを勉強しようと思っているのですが、AdobeXdの提供が終了してしまっているのか、新規にダウンロードできない状況です(つい先日、Adobeマスター講座付きのプランを購入しました)・・・。
一応ダウンロードボタンはありますが、「ページが見つかりません」と出てしまいます(-_-;)
Adobe Creative Cloud上で、XDドキュメントとして閲覧することしかできていないのですが、別のアプリでも画像の書き出し等は出来るのでしょうか?
初学者のため、稚拙な質問で申し訳ありません。
ご返信くださると幸いです。
らいちょうさん、はじめまして!
すっかり返信が遅くなってしまいすみませんでした。。
無料コーディング練習所をやっていただき嬉しいです。
僕もあらためてXDのインストールの場所を探してみましたが、本当にわかりづらい箇所にありますね…。
ただ、どうにかインストールボタンを見つけてクリックすると、Adobeのコントロールパネル?が自動で開いてそこのインストールボタンをクリックするとダウンロードできましたよ。以下にキャプチャを貼っておきます。
https://webdesigner-go.com/screenshot220414.png
↑僕の場合はMacですが、このコントロールパネルからインストールするのが一番簡単かもしれません。
うーん、別のアプリでは開けないと思いますね。
やっぱりそろそろFigmaでデザインデータを作った方が良さそうですね笑。。
ねこポンさん、コメント承認ありがとうございます!(^^)
実は、あの後自己解決しました(^_^;)
公式ホームページ(Adobe Xd)での新規ダウンロードは現状出来ず、個別に問い合わせれば、Xdをインストールするための圧縮ファイル(のリンク)を送ってくださいました。
アプリ一覧から消えてしまっているので、もう提供されていない!!と焦ってしまいました(^_^;)
お騒がせしてしまい、申し訳ありませんm(__)m
コーティングは入門編ですが、四苦八苦しながら取り組んでおります。笑
一つ質問なのですが、一回目は分からないところは答えを見ながら完成させて、二回目以降は自力でコーディングしようかと思っていますが、何度も繰り返さず、新しく取り組む方が良いのでしょうか?
またまた質問ですみません。
よろしければ、ご教授いただけると幸いです(^^)
らいちょうさん
XDの件、解決してよかったです!
なんとリンクを送ってくれるんですね〜。
>一つ質問なのですが、一回目は分からないところは答えを見ながら完成させて、二回目以降は自力でコーディングしようかと思っていますが、何度も繰り返さず、新しく取り組む方が良いのでしょうか?
その方法はとてもいいと思いますよ。一回目はしっかり理解するつもりで勉強して、二回目は知識がちゃんと定着しているか試験のような感覚で自力で取り組めば、さらに理解が深まりますもんね。
一応、入門編、初級編とそれぞれしっかり押さえてほしい基礎のポイントを凝縮してまとめているので、らいちょうさんのその方法でじっくり一つ一つ取り組んでもえれば基礎スキルが見について良いと思いますよ。
ただ、あまり深みに入って遅々として進まないのも良くないと思うので、完璧に理解し尽くす必要もなくて、わからない箇所が多少あっても、次へ進んでいってもらっても全然OKです。ご自身のやりやすい進め方が一番ですね。
無料コーディング練習所、ぜひぜひ楽しみながら取り組んでやってください!^^
ねこポン さん
お久しぶりです、らいちょうです!
XDの件ではありがとうございました。コーディング無料練習所でわからないところ(jQueryです)があり、ご教授いただければ幸いです。
スローペースですが、今は初級編を取組んでいます。ハンバーガーメニューの実装にあたり、見本を見つつコーディングしましたが、訳が分からなくなってしまいました… (;^_^
分からないところはネットで一通り調べましたが、↓のような解釈になってしまいました。
【解釈】
〈ハンバーガーメニューをクリックしたとき〉
$btn-Menu(#js-btn-menu)にactiveクラス、$gnav(.gnav)にshowクラスを付与する。0.2秒でメニュー画面をスライド表示する設定にして、メニュー画面を表示する。
〈もう一度クリックしたとき〉
$btn-Menuと$gnavの親要素である.header__navにクリックイベントがなく、$gnavにshowクラスが付与されていた時、showクラスとactiveクラスを取り除き、0.2秒で隠す。
おそらく間違った理解になっていると思うので、実装まで到達しても脳内が「???」な状態です。そのため、ねこポンさんがどのような意図でコーディングされたかご教授いただければ幸いです。
分かりづらい文章で申し訳ありません。お時間あるときに回答いただけると嬉しいです。
らいちょうさん、おひさしぶりです。
無料コーディング練習所の初級編に取り組んでくれているんですね。
いやーここは全然詳しく説明してなくてわかりづらいですよね。
おおむね解釈はそれで良いですよ。
下記がちょっと違うかなと思ったところです。
>.header__navにクリックイベントがなく、
.header__navは今回は無関係ですね。
>$gnavにshowクラスが付与されていた時
これは微妙な表現ですが、toggleClassメソッドなので「もう一度クリックしたらshowクラスが外れる」ということですね。
ハンバーガーメニューをクリックして開閉させるだけならここはshowクラスを付与する必要は無いんですよね。ただ、ナビ以外の部分(メインビジュアルとか)をクリックしたときにナビが閉じてほしいのでshowクラスを付与しておいて、ナビ以外の部分をクリックした時に、if ($gnav.hasClass(“show”))なら、閉じるという処理のために、showクラスを付与しています。
わかりづらいですかね?笑
ちょっと具体的にどこがらいちょうさんが「?」な状態なのかわからないので笑、さらにわからないところがあれば遠慮なく教えてください。
ねこポン さん
丁寧なご返信、解説ありがとうございます!そしてわかりにくい質問で申し訳ありません(;^_^A
なるほど、ナビ以外の部分をクリックしたときに、ナビを閉じるための条件式だったのですね。すっかり勘違いしていました・・・笑
今わからないところは、「 $(document).on(“click”)…」以下の部分です。
(難しく考えすぎて的外れかもしれませんが、お答えいただけると嬉しいです)
①まず、今回の「$(document).on…」は後から追加した要素にもイベントを実行させているのでしょうか?それとも、ページ内全体を指すのでしょうか?
② 「e.target」はイベントが発生した要素を対象にすると思うのですが、ここでは「button要素 とnav要素」を指すのでしょうか?
③ !$(e.target)の「!」は「e.target」のみにかかっているのでしょうか? それとも~lengthまでの文全体にかかっているのでしょうか?(e.taeget=button要素 &nav要素と考えるなら、それ以外をクリックする、というイベントにつながるので、「e.targetのみ」に「!」がかかっているのかなと思いました)
④.closest()は、指定した「タグ・属性」を持つ親要素を探すメソッドですが、今回は「button要素とnav要素」を探し、それ(e.targetで取得した要素)以外をクリックするとき、と考えれば大丈夫でしょうか?
またまた質問になってしまい、すみません(;^_^A
お手すきの時で構いませんので、お答えいただけるととても助かります!
らいちょうさん、こんにちは。
自分のコードを見るのがあまりにひさしぶりで解読するのに時間が掛かりました笑
うーん、今見ると正直もっと良い書き方があるかもしれませんね。。
以下、回答です。
①まず、今回の「$(document).on…」は後から追加した要素にもイベントを実行させているのでしょうか?それとも、ページ内全体を指すのでしょうか?
ページ内全体ですね。正直、僕も厳密にjQueryの仕組みがわかっているわけではないですが、まず$(document)の定義が重要です。$(document)はページ内のHTML内の要素の頂点のような存在でページ内のあらゆるHTML要素にアクセスできます。そして、 $(document).on(“click”, function (e) という書き方をした時に、eの中に画面内でクリックされたイベントが格納されるので、つまり、$(document).on(“click”, function (e)と書けば、「画面内でクリックされた要素が取得できる」のです。
② 「e.target」はイベントが発生した要素を対象にすると思うのですが、ここでは「button要素 とnav要素」を指すのでしょうか?
いえ、e.targetというかeはイベントが起きた箇所を示しており、button要素とは限りません。どこの箇所でもありえます。今回のケースで言えば、ハンバーガーメニュー以外のあらゆる要素がクリック(タップ)されるケースを想定しています。
③ !$(e.target)の「!」は「e.target」のみにかかっているのでしょうか? それとも~lengthまでの文全体にかかっているのでしょうか?(e.taeget=button要素 &nav要素と考えるなら、それ以外をクリックする、というイベントにつながるので、「e.targetのみ」に「!」がかかっているのかなと思いました)
文全体にかかっています。例えば!$(e.target).closest($gnav).lengthの意味は「クリックした箇所の親要素の$gnavが無い」つまり「クリックした箇所は$gnavではない」を指していますね。
④.closest()は、指定した「タグ・属性」を持つ親要素を探すメソッドですが、今回は「button要素とnav要素」を探し、それ(e.targetで取得した要素)以外をクリックするとき、と考えれば大丈夫でしょうか?
③での回答と同じです。
わかりづらいと思うのでコードにコメントアウトしつつ解説すると、
//ページ内のHTMLでどこかをクリックした時に、
$(document).on(“click”, function (e) {
//クリックした箇所が$gnavと$btnMenuではない時に、
if (
!$(e.target).closest($gnav).length &&
!$(e.target).closest($btnMenu).length
) {
//$gnavにshowクラスが付与されている時、
if ($gnav.hasClass(“show”)) {
$gnav.removeClass(“show”);
$btnMenu.toggleClass(“active”);
$gnav.animate({ width: “toggle” }, 200);
}
}
});
という感じですね。
なんだか、うーん、無責任なようですが自分でも書いていて完全に理解しきれてない感覚がありますね笑。すみません。申し訳ないですがこれ以上の回答は負担になるのでこれにて終了でお願いします^^すみません〜
ねこポン さん
お忙しい中、とても詳しく丁寧に解説していただき、本当にありがとうございます!
また、質問の量が多く、ねこポンさんにご負担をかけてしまい、申し訳ありません。こちらの至らない点で、ご迷惑をおかけ致しました。
返信いただいた解説をしっかり理解して、もう一度取り組んでみます。
貴重なお時間を割いて質問に回答して頂き、ありがとうございました。
らいちょうさん
いえいえー解説も足りなくてすみません。
最近は真面目に仕事もしていてあまり時間なく。。。
応援しています!
コメント失礼します。
入門編カフェサイトのコーディングなのですが、いくつか質問があります。
➊デザインカンプの画像のサイズが微妙なものが多いのですが、(w555,h547など)、実務でもこれは無視してそれ通りにやらなければいけませんか?
➋>imgタグには忘れずにwidthとheightを指定しましょう。指定がないとレイアウトシフト….
とあるのですが、cssをみるとw50%になってたり上書きされています。結局widthが属性の指定値より変わってしまうのでレイアウトシフト対策にならないのでは?というのとなぜhtml属性で最初から50%とかそう書かないのか?と疑問です。
❸フッターのロゴのサイズがwidth=”200″ height=”40″と属性で指定されているのですが、この200と40はどこから来たのでしょう?確かに比率を見れば200:40なのはわかるのですが…
よろしくお願いします。
連投失礼します。
➍.conceptにコーヒーの画像がありw50%ですが、親要素が1170pxなので585pxになるかと思いきや、実際はpaddingを除き1110pxの半分の555pxでした。
box-sizing: border-box;が指定されているのでpaddingもwidthのうちだと思っているのですが、こういう場合はpaddingなどを無視する仕様なのでしょうか?
ARさん、はじめまして。
無料コーディング練習所を活用していただき嬉しいです。
下記回答です。
➊デザインカンプの画像のサイズが微妙なものが多いのですが、(w555,h547など)、実務でもこれは無視してそれ通りにやらなければいけませんか?
はい、基本的にはデザインに忠実にコーディングを行います。コーディングをする上でどうしても何か問題になるのであればデザイナーと相談し、コーディング時に変更をすることはもちろんアリです。
➋>imgタグには忘れずにwidthとheightを指定しましょう。指定がないとレイアウトシフト….
とあるのですが、cssをみるとw50%になってたり上書きされています。結局widthが属性の指定値より変わってしまうのでレイアウトシフト対策にならないのでは?というのとなぜhtml属性で最初から50%とかそう書かないのか?と疑問です。
この場合のimgタグのwidthとheightはあくまで比率の維持の役割になります(間違っていたらすみません)。CSSでのwidthの指定が50%であれ、widthとheightを指定しておけばその画像の比率の空白が作られて、レイアウトシフトが起きません。そのためにwidthとheightを指定します。
❸フッターのロゴのサイズがwidth=”200″ height=”40″と属性で指定されているのですが、この200と40はどこから来たのでしょう?確かに比率を見れば200:40なのはわかるのですが…
このロゴのサイズが200px x 40pxです。その画像サイズを指定しています。
➍.conceptにコーヒーの画像がありw50%ですが、親要素が1170pxなので585pxになるかと思いきや、実際はpaddingを除き1110pxの半分の555pxでした。
box-sizing: border-box;が指定されているのでpaddingもwidthのうちだと思っているのですが、こういう場合はpaddingなどを無視する仕様なのでしょうか?
そうですね、無視するというかbox-sizing: border-box;はpaddingなどの余白を含める、という認識ですね。つまり元の大きさがそのまま維持されます。正直、僕もbox-sizingが登場した当初は完全に理解しているつもりでしたが、もはや呪文のように何も考えずにリセットCSS内で使っているためうまく説明ができそうにないです笑
無料コーディング練習所に関する技術的質問の回答は現在は負担になるため1ターンのみとしておりこれで終了とします。
コーディングの勉強、応援しています!