タグ

ブックマーク / hail2u.net (9)

  • スクロールは制御するな - Weblog - Hail2u.net

    WWD Japanのウェブサイトがリニューアルして、スッキリした見やすそうな印象のものに変わった。しかし実際のところ見やすさは見せかけだけで、ナビゲーションをクリックしても見当違いのタブに切り替わったり、ニュース一覧からニュースをクリックしたら、要約ページへ移動するだけで、文へはもう一度クリックしなければならなかったりする。中でもひどいのがMobile Safariでの閲覧だ。 このウェブサイトではスクロールをほぼ自前で制御しようとしているため、常にこのようにMobile SafariのURLバーとツールバーが上下にそれぞれ表示され続ける。その上、最上端にロゴとグローバル・ナビゲーション、最下端に広告がそれぞれ固定位置であるので、コンテンツの領域がかなり制限されている。iPhone 5SやSEどころか6+や7+でさえも致命的なのではないかと感じられる狭さだ。 とにかく文書を読ませようとい

    スクロールは制御するな - Weblog - Hail2u.net
    torounit
    torounit 2016/10/03
  • 競合相手のプロモーションのため、公式プラグイン一覧からの削除されたこと

    全世界的にPostCSSが盛り上がってきたので、他の最小化ツールなどは出てるのかなと公式のプラグイン一覧を参照したところ、全然関係のないことに気付いてしまった。確か以前はCSSWringがちゃんと載っていたように思ったが、消されていた。なんかやらかしたとか出来が悪いとかならばしょうがないというところだが、どうもcssnanoのプロモートのために消されたようだ。おっと。 こういう独自のプラグイン・エコシステムを持つツールでは、様々な理由でプラグインが粛清されることがある。ここのところだとgulpがブラックリストを作っていることが有名だろう。そういうスタンス自体にそもそも賛成することはできないけれども、ツールにもそれぞれ哲学のようなものがあるはずなので、それから外れていたらしょうがないのかなとは考えている。 今回のケースもそうであるのかもしれないが、後出しで消されるとなかなかショックは大きい。

    競合相手のプロモーションのため、公式プラグイン一覧からの削除されたこと
    torounit
    torounit 2016/02/17
    これはひどい
  • CSS Transitionを使ったスムーズにスクロールしてトップに戻る機能

    前に作ったスクロールした時に位置固定のロゴをトップに戻る機能にすり替えるものを少し手直しして再導入した。今回はスムーズにスクロールさせようかと色々考えていたが、やはりJavaScriptでscrollTo()を制御するのはコストが高い。CSSならどうだと試行錯誤したところ、どうやらbody要素への負のマージンをCSS Transitionで滑らかに変化させれば良いようだ。 Demo: Scroll Smoothly with CSS Transition デモのページにはダミーテキストの各セクションの最後にそれぞれ⇑ Back to Topというリンクがある。それをクリックすると1秒かけてスムーズにスクロールしながらトップに戻る。トリガーとスクロール自体はJavaScriptで行っているが、スクロールのアニメーション自体はCSS Transitionで行っている。具体的には以下のような処理

    CSS Transitionを使ったスムーズにスクロールしてトップに戻る機能
    torounit
    torounit 2015/05/11
  • 我慢の期間

    MovableTypeとWordPressとJekyllとHugoや、Gruntとgulp、SassとLESSとStylus、果てはjQueryなどの話はスケールやパターンを変えて繰り返される。その話はあたかも特定の何かに依存することが良くないとか新しいこっちのがすごいぞというように結論づけられることが多くて、僕にはちょっと頷けないこともあったりする。大切なのは何を解決しようとしていたかを忘れないことだと思う。複雑化しそうな場合にそこから先へ踏み込まずに我慢する期間がいるとかかも。 GNU makeでいいじゃん的な結論はそれは確かにビルドという点ではそうなんだけど、Gruntが解決しようとしていたのはそこじゃない。npmという生態系の中で完結させやすいタスク実行環境を手軽に用意することができることで、それ以上でもそれ以下でもない。実行速度以外にも腐臭を放つAPIやプラグイン間で一貫性のない

    我慢の期間
    torounit
    torounit 2015/04/16
    gulpはまさにJS屋のツールだなって思ってる。
  • Bower→npm

    npmとBowerが混ざってたりするとやる気ゲージが一気に減る。Bowerはやめられるけど、npmはやめられない。npmレジストリーにはNormalize.cssがあったりとわりとなんでもありな空気がある。ということでSassパーシャルをnpmパッケージ化してた。 hail2u-scss-column-equation hail2u-scss-functions hail2u-scss-partials 最近はウェブ開発に使うものなら何でもありみたいな雰囲気でnpmは使われているような気がする。io.jsのおかげでNode Package Managerじゃないとか後出しされたのも大きそう。パフォーマンスの面からもnpmを主軸に置くのは悪くない選択だと思う。でもモノによって依存解決の仕組みを切り替えてやるのも一理あるので悩ましい。 こういうものの場合はprivate: trueにしておいて

    Bower→npm
    torounit
    torounit 2015/02/19
    ほうほう。
  • Mobile Safari 8でposition: fixedした擬似要素が完全に位置が固定されない

    Style GuideをMobile Safari 8で確認していて気づいたのだけど、擬似要素をposition: fixedした場合、スクロールしている最中は位置が変化しないようだ。つまりスクロールを止めた後で位置がアップデートされるので、他のブラウザーのように完全に位置が固定されない。 Demo: Fixed Pseudo Element on Mobile Safari 8 デモでは見出しと概要に続く「Lorem Ipsum」という文字列が擬似要素として仕込んである。これを同時にposition: fixedで位置固定しているが、Mobile Safari 8ではスクロール中は位置が変化しないので、画面外にスクロールアウトしてしまう。スクロールを止めると位置固定で期待される位置に改めて描画される。 擬似要素ではない場合は今まで通り完全に位置が固定される。 パフォーマンスの向上を受けて

    Mobile Safari 8でposition: fixedした擬似要素が完全に位置が固定されない
    torounit
    torounit 2014/10/14
    position: fixed怖い
  • HTML5 Shivの削除

    このウェブサイトは、rem単位を使っていたりと、Internet Explorerだと事実上バージョン9以降でしかうまく閲覧できないようになっている。となるともうHTML5 Shivを使う意味もあまりないので削除した。これでようやく不格好な条件付きコメントを見ないで済む。 条件付き○○というものはうまく機能するが、それの利用には継続したメンテナンスが必要になる。条件付きで何かを特別視するので、プラットフォームに変化が加わるごとに、意図した通りに機能してくれるかどうかや追加で特別視する必要があるかどうかを確認しなければならない。そうしないと古く時代遅れのプラットフォームに依存し続けることになる。 現実世界の多くの仕組みではメンテナンスなしでも大体うまくいく。それはプラットフォームに変化が加わることがあまりないからだ。人々も大体そう感じているので、何もしなければそのまま動くはずだと考えている。

    HTML5 Shivの削除
  • ID使っても別に問題ない

    CSSでID使うの良くない……どころか、ID使うのはゴミクズカスみたいな風潮で辛い。その根拠はいくつかあり、それらはCSSだけをただそのまま書く場合には納得出来ないこともないかなーと思うので余計に辛い。特にOOCSSのようなアプローチではIDは混ぜるな危険。だからといってIDを使わないのがベスト・プラクティスなわけじゃない。 CSS Lintの利用が広まり、これがID使うなって怒るのも原因の一端な気がする。Disallow IDs in selectorsではIDの問題点として以下のようなものを取り上げている。 However, IDs have a downside: they are completely unique and therefore cannot be reused. つまりユニークなため再利用できないというマイナスの面がある、と。確かに再利用できない。でもこれはマイナス

    ID使っても別に問題ない
    torounit
    torounit 2013/09/14
    ユニークを保証するためにIDを使うってのはすっごいわかる。けど、これ実行するには、なかなか高いレベルのCSS設計力が無いと結局important祭りになりかねないよね。CSSのデザインパターンが必要なのかも
  • 結局どうすればいいの? - Dive Into HTML5

    Translation of: What Does It All Mean? - Dive Into HTML5 Diving In The Doctype The Root Element The <head> Element Character Encoding Friends & (Link) Relations rel = stylesheet rel = alternate Other Link Relations in HTML5 New Semantic Elements in HTML5 A long digression into how browsers handle unknown elements Headers Articles Dates and Times Navigation Footers Further Reading 訳注 Diving In この章で

  • 1