今更ながらにFireFoxのマージンの相殺について

知ってはいたけど真剣に悩んだことがなくて、いつも結果オーライでいってました。。。

…が、また今日お仕事でコーディングしていてぶち当たったのでちゃんと解決法を考えてみました。

まあ、皆さん知ってると思うのでほぼ自分用のメモです(笑)

 

Firefoxのマージンの相殺はmargin-topを使ったときの挙動ですね。

たとえば、

#div1{
 margin-top: 20px;
}
#div2{
 margin-top: 20px;
}

 

こういったCSSがあってdiv1はdiv2の親のdivだとします。

こうした時に、「div2のmargin-topが適用されない」といった現象でたとえ、ブロック要素を入れようがheightを入れようが変わらないんだぞ!…俺!

 

んで、まあ調べたネットなどでいろいろ見た結果解決策はこれ

 

#div1{
 margin-top: 20px;
}
#div2{
 margin-top: 20px;
width:100%;
float:left;
}

 

floatとwidthを設定する!

 

これ覚えておくように!…俺!

 

別にコーディング知識をこれ以上深めようとは思ってませんが、実作業で困らない程度には知っておきたいってことです。

これ以上のことはCSSやFirefoxの仕様をネットで調べればいろいろでてきますよ^^

まあ、これでもまた詰まってしまって調べたりしたらまた追記していきます。

ソフトバンクのJelly Beans SoftBank 840SHのサイトが気持ち良すぎる

なんか、前に見つけた全日本バーべイタイム選手権もすごかったけどこれもなんかイイです。

 

Jelly Beans SoftBank 840SH

 

「ダンスする携帯」ってことらしいですが、その名の通りサイト内で携帯が踊りまくってます。

それがなんとも気持ちがよい!

作った人は同じだったりするのかな。。。

 

こういうのを見ると毎回折れてしまう3Dへの気持ちがちょっと復活するんだけど、まだまだ覚えることがいっぱいだー。

とりあえず頑張ろうっと。

FlashDevelopのシンタックスカラー設定

今回はエディタのお話です。

FlashのメインScriptをAS3に変えてからめっきりFlashDevelopの虜になってます。

だってFlashIDEよりも使いやすいんだもの。。。

 

んで、まあ前からちょっと気になってたのがScriptのカラーリング設定。

これをなんとか今使ってるFlashIDEの設定に近づけないかとネットでいろいろ調べてみました。

だいたいの部分はなんとなく理解できて変更できたんですけど、予約語?(addChildやstageとか)がどうしても変わらずヤキモキしてました。

 

んで、いろいろ探してたらコチラで紹介されているサイトでココのコードをコピペして使うと、一気に変わりましたー!

 

いやあ情報を公開してくれている方々に感謝です。

自分も有用な情報を集めてなるべく公開していかなきゃ。。。

最近買った本

今回は最近買った本をエントリー。

Flash3Dコンテンツ制作のためのPapervision3D入門 (XK BOOKS for developers)
池田 泰延
エクスナレッジ
売り上げランキング: 16279

 

 

Papervision3D入門はずっとやりたかったものなので買ってみました。
・・・が、全然進みません。やっぱ3D難しい!

 

 

 

 

 

こっちはいろんなFlasherが「神の書」として扱っていたので即購入!

この1つ前のやつもこの前読み終わったし、頑張るかな~。

正直、3Dよりこっちの方が楽しい。

iPhone買っちゃいました!

やっちまいましたね。

昨日いきおいでiPhoneをゲット!

去年くらいからFlasherブログをいろいろ調べたりしていて、そんななかでよく目にするのがiPhoneでした。

んで、FlasherでiPhoneといえば、fladdictさんですよね。

ええ、もちろん今日はToyCameraやらQuadCamera、TiltShiftGenを購入させていただきました!

とりあえず、とってみたのはここにTwitterで初画像アップしてみました^^

楽しいなあ~iPhone。

難点はクレジットを持たないのでiTuneCardを買わなきゃいけないこと。

まあ、セブンイレブンにいけばいいんですけどねww

アプリやらメールやら設定がまだいろいろ済んでないけどau+iPhoneなのでぼちぼちやっていくかな。

ただ…寂しいかな、周りにiPhoneユーザがほぼいない・・・。2人くらいかな。

みんな買えばよいのに。

っと、いいつつAndroidもきになってるんですけどね。さすがに3台はいらない^^;

さあて、iPhoneアプリにがぜん興味が沸いてきた。勉強してみようかな・・・。

PHPでCSVを用いた場合のあいまい検索

もう一つPHPでつまづいたのでメモ。

1つ前のエントリーで書いた「2次元配列のソート」と同時につまったのが、「CSVデータの中身をあいまい検索」。

SQLならそもそもLikeコマンドがあるからいいんですけど、CSVデータだとただの配列なのでどーしたものかと。

これもすごく悩みました。

さっさと結論を書くと、配列を要素数分forかなんかで回して、similar_textでマッチする文字数を検索でした。

similar_textは比較対象と検索文字の類似性を求める関数です。

 

って、わかりづらいですね。コード書きます。

 

//$itemsは元の配列
//$cは合致した文字数
//$wordは検索文字
for($i=0;$j<count($items);$i++){
     $c=similar_text($word,$items[$i]);
     if($c==strlen($word)){
      //合致した場合の処理
     }
 }

ここでのポイントは元の検索文字のバイト数とsimilar_textを用いて得られた結果の文字数で整合性を取っている部分です。

ここを同じにしておかないと、検索元の文字の一部が含まれているだけで合致したことになってしまうので・・・。

けど、そこは「もしかしたら~」の検索に使えるかもですね。

PHPでの2次元配列のソート

今回はなんとなくPHPです。

なぜかというと、凄く追い込まれてしまったのでメモ的に載せます。

2次元配列のソートをしたい場合なのですが、方法としてはarray_multisortかusortを使う方法があると思います。ってか、自分が無知なだけかもしれませんがこれ以外知りません。

んで、CSVにあるデータを配列化して出力するってのをよくやってるのですが非常に困りました。

やった手順としては

 

1.CSVデータを配列として取得
2.その配列をusortを使ってソート

 

これだけでできるはずですよね?

しかし、なぜかできず・・・1時間以上悩みました。

んで、いろいろと考えているうちに気づきました。

 

「あ、CSVを2次元配列で取得してない・・・」

 

そう、ただの1次元?配列でしか取得してませんでした・・・。

ってことで、配列で取得したあとに2次元配列化してやっとこ完成。

あー、よかった。

event.currentTarget

 

最近仕事に追われてめっきりネタを考えてませんでした。。。

今日は少し余裕ができてネタもできたので久々に書きます。

今回はマウスのクリックの動作について

たとえば画面内に同じサイズのMCをグリッド上に9つ並べたとします。

そしてそれとは別にもう一つ枠型のMCを用意します。

やりたいことは単純で敷きつめられたMCのどれかをクリックしたら、枠型のMC(以後frame_mc)を移動させるというものです。

サンプル画像01

で、9つのMCは1つのMCでフレームに9種類並べて(9フレーム)配置する時にフレームを飛ばしてランダムに並べてるとします。←分かりづらい?

そうした時に単純に並べている画像に対してそれぞれaddEventListenerでCLICKイベントをつけます。

for(var i:uint=0; i<nums; i++){
    mc_ary[i].addEventListener(MouseEvent.CLICK,onChange);
}

function onChange(event:MouseEvent):void{
    frame_mc.x=event.target.x;
    frame_mc.y=event.target.y;
}

こうしてframe_mcをそれぞれの場所に移動させるものをonChange関数に書いたのですがさっぱりうまくいきませんでした・・・。
どううまくいかないかというと、xもyも0に行くのです。

しばらく「あーでもない、こーでもない」とやっていて、見つけたのが

「event.currentTarget」

こいつ。

まあ、見た目からして一つ上のターゲットってことでしょうけど、こんなものがあったとはつゆ知らず。

ためしてみたらバッチリ!

どうやら、内包されている場合は中のオブジェクトに対してtargetが働いているみたいです。なので、すべて(0,0)に向かっていったみたいです。

MCを内包してクリックイベントを取る場合はみなさん気をつけましょう・・・って俺だけかもしれない。。。

一応、以下が正しい表記です。

for(var i:uint=0; i<nums; i++){
    mc_ary[i].addEventListener(MouseEvent.CLICK,onChange);
}

function onChange(event:MouseEvent):void{
    frame_mc.x=event.currentTarget.x;
    frame_mc.y=event.currentTarget.y;
}

燃え尽き気味です

なんとか去年から持ち越してる

 

ActionScript 3.0 アニメーション
Keith Peters
ボーンデジタル
売り上げランキング: 28922

 

 

 

これをなんとか続けて、やっとインバーキネマティクスとか3Dの基本に辿りつきました!

 

が・・・

 

限界です・・・。なんだかさっぱり理解が追いつきません。

理解してなんとか有用な記事を書きたいな~と考えていたんですが、自分がまだまだでした・・・。

そんなこともあって、自分がよく考えることがあります。

 

「はたして自分がFlasherとしてどの辺の位置付けか?」

 

これって気になりません?

まあ、人と比べることに意味を感じないとかそういった意見は別にして、自分の技術とかがどの辺の位置にあるのか。

まわりにあんまり同じくらいの技術量のFlasherがいないものでホントわかんないんです。

んで、まあ購読してるRSS見てたらいいのがありました。

 

「Flasherのレベル10」を考えてみた。 | エントリー | _level0.KAYAC

 

KAYACさんのページにこんなのがありました。

これでいくと、自分はおそらくLevel5くらいです。

いろいろすっ飛ばしてる部分もあるのでそのくらいかなあと。

昔から思ってる目標地点としてはLevel8くらいですかね。ここを目指したいです!
いや、だってLevel9とかだと英語の語学力も必要になるしね…。

自分がどの位置にいるかちょっと見てみるといいかも?です。

年末・年始のご挨拶

明けましておめでとうございます。

書いてる途中で用事ができて結局、年を越してしまいました。

去年は、いろいろな出会いや出来事がありました。

出会いのおかげで自分の世界が広がりました。

出来事のおかげで以前より、思慮深くなれました。

いろんな出来事のおかげで成長できたと思います。

去年であった全ての人に感謝です。

 

今年は実際フリーランスが続けられるかどうか瀬戸際です。そして、このブログがちゃんと続けられるかも自分の課題です。

まあ、このブログを書き出したころからFlashの仕事がぼちぼち増えだしたのでなんとか続けていきます!

今年の目標は仕事の半分以上をFlash関連で固められることと貯金!

もしかしたら就職とかすることになるのかなあ~とも考えますが。。。

まあ、なんにせよ今年もみなさんよろしくお願いします。

Get Adobe Flash playerPlugin by wpburn.com wordpress themes

Bad Behavior has blocked 3 access attempts in the last 7 days.