メモログ

Github の Content Security Policy

github.com のサイトでdelicious bookmarklet を動かしても、モーダルが開いてくれない。これはなんでかなと思っていたら、どうやら Content Security Policy と関連するらしいです。詳しくは Content Security Policyに書かれています。Shortcomingsの部分。W3Cの仕様的には、Content Security Policy (CSP) がbookmarkletの挙動を阻害するものではないはずだけど、実際にはbookmarkletの動作に影響を及ぼしていると。

a:link, a:visitedの詳細度はclass selectorのみより大きい

a:link、a:visitedで宣言されたスタイルは、type selector(aタグ)とpseudo-classes(:visited)を組み合わせた詳細度になる。Calculating a selector's specificityを参照すると、詳細度は(0,1,1)となる(CSS2.1ではstyle属性も含めて(0,0,1,1)と表現されるけど内容は同じ)。

compass で sass の sourcemap を作る

sassのsourcemapを用意すると、Chromeのdeveloper toolsを使ったときにscssファイルでスタイルのinspectができるようになるので、非常に便利。詳細はSassファイルでの記述位置を知るより美しい方法|Blog|Skyward Designなどを参照。

HTC EVO (Android 2.3) と JSON.parse(null)

HTC EVO(2.3.4)のAndroid端末で、localStorageに入れた値をJSON.parseした場合に、localStorageからnullが渡るとillegal accessのエラーになる。エラーを出力しないようだけど。。。weinreのコンソールでJSON.parse(null)と打つとそのようなエラーが確認できる。

あらためて IE8 について

少し前までIE6で動かないから... というような気がするのですが、気がついたら過去のブラウザになっていて、サポート対象でもIE8が最低限のバージョンという感じになってきました。いつのまにか。 しかしながらIE6の時代が長かったのもあり、IE6でもできることをベースに作成するクセがついている。個人的に。

Chrome の workspace を使う

Chrome DevTools Revolutions 2013 - HTML5 Rocksで紹介されていた話で、最近になってChromeにも追加されました。Workspaceを追加して、変更するファイルにマップを設定すると、ChromeのDeveloper tool上で行った変更がマップしたファイルにも反映されるようになります。