Next.js vs Drupal - デジタル庁 Web サイトの戦い。モダン vs レガシーの熱いバトルがいまここに!SIer 系のみなさまの参戦もお待ちしております!ヘッドレスCMS ってなに?デジタル庁の事例とともに考える。
この記事は、ReactでCSSを書くときに関連したCSSを別々のコンポーネントに分けるのをやめようという記事です。主な理由は、スタイリングという機能が複数コンポーネントに分散するのを防ぐためです。これには修正時に複数コンポーネントにまたがって修正が必要になるのを防ぐという意味もあります。 Flexboxの例関連したCSSが複数の要素に分かれることはよくあります。その代表例がdisplay: flexです。例えばこんなレイアウトを考えてみましょう。左側のボックスの幅が決まっていて右側の幅が可変の2カラムレイアウトです。 左のカラム (100px)右のカラムこのレイアウトはおおよそ次のように実現できます。 /* 親要素 */ display: flex; /* 子要素(左) */ flex: 100px 0 0; /* 子要素(右) */ flex: auto 1 0;では、Reactではどの
ウェブ業界の当たり前だと思っていることでも、同業他社の人には違う常識があるかもしれません。自分が業界多数の傾向と違うところはどこなのか・・・、この連載ではアンケートデータから国内のウェブ業界の傾向を分析します。 連載第6回目となる本記事ではウェブ業界の「HTMLコーダーにとっての2020年」と題してアンケート結果を紹介します。 HTMLのエディター HTML制作によく使われるエディターはどれでしょう? アンケートで質問してみました。 805票の回答があり「VS Code」が64.5%、「Atom」が8.8%、「WebStorm」が8.2%、「その他」が18.5%でした。 VS Codeは圧倒的な人気ですね。ICS MEDIAでは記事『VS Codeの拡張機能7選』で紹介しているとおり、無料のソフトウェアなのに開発を便利にする機能がたくさん揃っていて魅力的です。 WebStormの回答者数は
SVGによる背景パターンを解説します。まだ広まっていませんが、優れたデザインが多く、選択肢が増えます。SVGパターンの仕組みを解説し、活かすための6つのツールを紹介します。 ツールが持つ機能と、パターンを知識と組み合わせれば、新しいデザインの扉が開けるはずです。 SVGパターンの仕組みとは 時代を問わず、Webデザインではパターン(模様)を使ってきました。CSSの知識が少なくても、背景に好みの画像をタイル状で並べる方法を知っていると思います。 div { background-image: url("sitepoint-tile.svg"); } 背景にはJPGやPNGなどWeb用の画像フォーマットが使えますが、SVGは効率が良く鮮明で、劣化せずに拡縮できるため、CSSの背景画像にも適しています。 SVG本来のやり方(SVGパターン)で、同じ画像を繰り返し並べて背景画像に設定する方法を詳し
TeXやMicrosoft Word、あるいはその他の汎用的なテキスト処理環境では簡単に実現できるような見た目に自分の文書を似せようと頑張る(文字どおり)無数の人たちに対して、 “悪いけど、うまくいかないよ” と繰り返し言い続けるのは、実際のところ、この1年間、私にとっては継続的な楽しみだった。- Marc Andreessen 1994年 Tim Berners-LeeによってHTMLが発表された1991年には、ページのスタイルを設定する方法はありませんでした。HTMLタグがどのように処理されるかはブラウザ次第で、多くの場合、ユーザの恣意的な入力が大きく影響しました。そうした事情から、ページがどのようなスタイルで処理されるかを”提案”するような標準的な方法を求める声が上がるようになりました。 しかし、CSSが導入されるのは5年先で、完全に実用化されるには10年の歳月を待たねばなりません。
去年くらいまでは、こういったレスポンシブ対応のMasonryレイアウトはJavaScriptで実装するのが主流でした。jQueryのプラグインも数多くリリースされています。 そんなレスポンシブ対応のMasonryレイアウトをスクリプト無し、CSSで簡単に実装できるdrivewayを紹介します。CSSアニメーションを使ったインタラクションにも注目です! 実装が簡単 インタラクティブ レスポンシブ対応 カスタマイズが簡単 拡張性も豊か 実装にはFlexboxが使用されており、2016年1月12日にIEの古いバージョンのサポートが終了し、実質IE11+となった現在、多くのプロジェクトで利用できるでしょう。 ちなみに、2017年4月11日にVistaのサポートも終了します。 参考: Windows 製品のサポート ライフサイクル について drivewayのデモ デモではdrivewayで実装され
あれ?どうやるんだっけな?となるコトが多いので、勉強がてら記事に。 olを使って連番付きのリストを作ろうと思った場合、数字部分が気に入らない事があります。 ブログパーツで言うと、人気記事のマークアップで、ランキングなんかを作るときに、数字部分にアプローチできれば、捗ること請け合いですね。 と思って、さあ、CSSで装飾や!ってなっても、あれolの数字って、どうやって弄ったらいいんだ?list-style??みたいになります。 じゃあ、本腰入れてolの数字をカスタマイズしてやろう!と、イマココって感じです。 olとは?まずはolってなによ?という話しですが、簡単に言えば「数字付きリスト」をマークアップするためのHTMLですね。 <ol> <li>こんな</li> <li>感じで</li> <li>数字付き!</li> </ol> こんな感じで数字付き!といった具合に。 ブログやサイトのUIを作
IEでは昔からあったルビ機能に対応するみたいですね。 それはよいニュースなのですが、Firefox 37から対応するという話もあった64bit版はどうなったのか気になる。 窓の森の記事には触れられていないので、延期になっているのかなあ。 仕様通りにまともにrubyを実装したのはむしろFirefoxが最初。 ChromeはHTML rubyをサポートする(ruby要素などを認識する)が、CSS rubyは一切サポートしない(組み込みのruby要素以外をルビ表示できないしルビの見栄え調整などは一切できない)。 IEはバージョン5から独自拡張でrubyをサポートして、バージョン8から当時の草案にもとづいてdisplayプロパティ値を追加したけど、ruby-position、ruby-alignなどはIE11でも独自拡張時代の仕様のままで、CSS rubyは完全無視している。HTML rubyはほ
今話題(?)の CSS 設計のメモ。 この「ある程度の規模」というのは、肌感覚としてテンプレートの枚数( ≠ Webサイトのページ総数)が 20P〜50P くらいのイメージ。 また、コーディング完了後に自分以外の人間による断続的な更新が入るという前提。 そして一番重要なのは「更新する人のスキルは定義しない。」ということ。つまり HTML の知識が乏しい人が更新する可能性があることを前提とする。 きっと1ヶ月くらいすれば変わると思うけど、自分の思想のログとして残しておく。 今ぼくは以下のことに気をつけながら CSS を書いている。 コードが長くなることを気にしない セレクタが長くなることを気にしない セマンティクスの実現の難しさを理解し、妥協する 再利用性より保守性 拡張しやすい設計 最初から最適化しようとしない ゴールは目先のパフォーマンス向上ではなく誰が触っても問題が起きにくい設計 ひと
私のように趣味でWebサイト作成をしていると基礎が抜け落ちていたりするので復習を兼ねて擬似要素と擬似クラスの違いについて考えてみました。 擬似クラス(Pseudo-classes) 擬似クラスには次のようなものがあります。何気なく使っていますが、擬似クラスという名称を知らない方も多いのではないでしょうか。 :link :visited :hover :active で、擬似クラスはCSS3で大幅に追加されました。 E:nth-child(n) ・・・ n番目の子要素に適用 E:nth-of-type(n) ・・・ n番目にあるE要素に適用 E:first-of-type ・・・ 兄弟関係にあるE要素で最初のものに適用 この他にもまだまだあります。これらの詳しい内容については「保存版!CSS3セレクタの説明書|Webpark」をご参考に。 なぜ擬似クラスという名称なのか 例えば、以下のような
IE7で拡大・縮小時にレイアウトが重なってしまったり、IEでフロートした要素がはみ出てしまったりとIE独自のCSSのバグがいくつかあります。 これは、IEのhasLayoutが原因のひとつとなっているので、それを回避する方法を考察します。 hasLayoutとは IEでのCSSのバグを回避するhasLayoutの値 CSSのバグに効果のあるhasLayoutの指定方法 hasLayoutの参考ページ hasLayoutとは hasLayoutとは、オブジェクトがレイアウトを持っているかどうかを示すものです。 hasLayoutの値はread-onlyのため読み込みのみ可能で、falseとtrueがあります。 hasLayoutの値(read-only) false デフォルト値。 オブジェクトがレイアウトを持っていない。 true オブジェクトがレイアウトを持っている。 IEでのCSSのバ
<!DOCTYPE HTML> <html lang="ja"> <head> <meta charset="UTF-8"> <style type="text/css"> * { box-sizing: border-box; } .wrapper { padding: 30px; position: relative; } .box { position: relative; background: #ccc; height: 50px; width: 100px; margin-bottom: 20px; } .box:after { content: ''; position: absolute; border-top: 10px solid #ccc; border-right: 5px solid transparent; border-left: 5px solid tran
js で DOM をゴニョゴニョしたい時、きっと皆さんは id や class で DOM に名前を付けて、その名前を利用して js の処理を書いていると思います。 例えば<input type="button" class="update" value="更新" />のようなボタンがあったとして、 js 側で更新処理を書くときには下記のように書きます。 $('.update').on('click', function () { // update 処理 }) でもこれだと問題になるケースがあります。よくあるのが、マークアッパーとフロントエンジニアが分業していて、マークアッパーがデザインのために class 名を変えてしまい js が動かなくなるパターン。分業せずに一人で全部やってたとしても、時間が経つにつれ使っている class 名が js だけで使っているのか、css でも使っている
特定のOSおよび特定のブラウザでしか発生しないかと思われますが、 「いいね」だけずれちゃったりしたとき。 ありませんか?こんな風に。 これ、もしかしたら、「line-height」のスタイルが当たってしまっている所為かもしれません。 .social { line-height: 0; } 「いいね」のところだけこんな感じでしてあげましょう。 どうでしょうか、キレイに揃いましたか? ソーシャルのボタンとかは、外部からいろいろ引っ張ってくるからアタフタしちゃうかもしれませんが、 割と簡単に解決することもあるかもしれませんね。 LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。 Webサイト制作の実績・料金を見る
訪問済みリンクを示すセレクターです。なお未訪問のリンクは:linkで得られます。 いずれもリンクを前提としているので、要素aの指定は省略して問題ないでしょう。 背景画像を指定するプロパティです。読み込みに時間がかかる場合もあるので、background-colorも一緒に指定しておきましょう。(してないとこ多いんですよね……。) background-positionを使ったCSSスプライトという技術も有名ですね。 プライバシー情報漏洩の仕組み さて閑話休題。この二つを組み合わせて悪用すると、「(他サイトへの)訪問履歴」を得る事が出来てしまいます。 background-imageが:visitedと一緒に使える場合を考えます。 この時に問題になるのが、「画像を読み込む」つまり「画像をウェブサーバーへ要求する」という当たり前の行為です。 要求を受け取ったウェブサーバーは、要求している画像の
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く