CreateJSを試す1 とりあえず動かす


createjs1

Flashを使っていた方にはわかりやすいと評判のJavaScriptライブラリ、CreateJSを使ってみています。

CreateJS(公式)

ゲームらしいものを作りたいのですが、とりあえずはそこに至るまでいろいろやる必要があるかな~ということでテストしてみました。まずは簡単にデジタル時計でも…ということでこんなのを作ってみました。

CreateJS Test 1

時計の背景の色は毎秒ColorMatrixFilterで変えています。

ソースはメイン部分を抜粋すると以下の様な感じです。

続きを読む CreateJSを試す1 とりあえず動かす

position:absoluteはwindowの左上からの座標に必ずなるとばかり思っていた


absolutecenter

勘違いの話。

CSSでレイアウトするときに、「全部position:absoluteで配置すれば作ったデザインからずれないんじゃないか?」と思うけれど、「position:absoluteはwindowの左上からだからウィンドウ引き伸ばしたら左に寄っちゃうからだめだよな…」と思い直してあきらめていたのですが、そもそもこの前提が間違っていることを最近知りました。

動作サンプル

position:absoluteの特性は、そもそも「親要素に対しての絶対座標で配置」ということなのですが、「親要素がstaticである場合はさらにその親要素からの絶対座標になる」というのが仕様のようです。positionは何も指定しなければstaticになるので、何も考えずに作ると、position:absoluteにした時の親要素は延々と辿っていってwindowになるはずです。なので、windowからの絶対配置になってしまって、左上寄せになってしまう…という勘違いを自分もしていたのだと思います。

つまり、中央寄せしたabsolute要素を作りたければ、positionがstaticでない要素を中央寄せにして、その子要素として絶対座標で配置したい要素を置けば良いことになります。上のサンプルはそんな感じで置いています。IETesterのIE6で確認しても普通に表示できていました。

多分初歩の初歩なのでしょうが、一度思い込んでしまうとなかなか気づかないものだな…と反省するのでした。

ちなみに、この方法、万能ではありません。ここでちょっかいを出してくるのがIEです。

表示は確かに出来ます。位置はピッタリです。しかし、position:absoluteは別のバグを引っ張りだすようで、IE8でjQueryのフェードインアウトなどの動きがおかしくなります。filterを全部の要素に指定すれば動いたのですが、それも何だか重そう…というのもあって解決策を模索中です。

うーん、ブラウザは奥が深い、というか闇が深いというか。人がブラウザを見つめるとき、ブラウザもこちらを見つめているのかもしれない。

参考

SublimeTextでHTMLとSCSSとJSを書いた話


SublimeText
st2

もう既に有名で、もはや紹介する必要すらないであろうものではありますが、SublimeTextをしばらく使ってみたのでその話を書いてみます。

Sublime Text: The text editor you’ll fall in love with

「恋に落ちるエディタ」という意味になるでしょうか。TOPページでデモが流れていて機能が紹介されていて、便利そうに見えます。Macっぽい感じがしますが、Windowsでも使えます。LinuxもOKみたいです。

とはいえ、このエディタの一番いいところは「何も設定しなくてもカッコイイ」というところではないかと個人的には思っています。エディタといえば、大抵は無骨な、メモ帳とほとんど変わらない、あるいはちょっと便利な機能を持っているものか、もっと統合開発環境みたいに重くて、やっぱり無骨なものがほとんどな気がしています。もちろん、カスタムすればどれも十分に良い感じになるのだけど、特に何もしなくてもカッコイイものは少ないのでは、と。(知らないだけかもしれない)。使っていたらそれなんてエディタですか?ってプログラマじゃない人が聞きたくなるエディタってすごいんじゃないかと。

続きを読む SublimeTextでHTMLとSCSSとJSを書いた話