折り畳むとA4サイズのカバー付きソーラーパネルが使える

  • Anker®+ソーラーチャージャー+折りたたみ式+PowerIQ搭載+(8W)

linked by blog-tools

以前からソーラーパネルはいろいろあったのですが、手頃なものが見つかったのでAnker ソーラーチャージャー 折りたたみ式 PowerIQ搭載を購入しました。
ANKER のもので上のものとその倍のパネル数のものがラインナップされていてPowerIQを搭載しているのでiOS、Android製品であれば、最も最適な状態で充電してくれます。
パネルが2枚のものは出力が最大1Aで日が当たれば夕方でも0.3~5A程度出力され、モバイルバッテリーに充電できるぐらいの出力が得られたのでしばらく、モバイルバッテリーの充電に使ってみようと思っています。
もともと、防災用に欲しかったのですが、カーテンレールから吊るせば普段も使えるので常用になりそうです。
iPad mini、Nexus7ともに充電可能でした。

  • Anker®+ソーラーチャージャー+折りたたみ式+PowerIQ搭載+(8W)
  • 【Anker社正規商品】+折り畳み式+ソーラーパネルチャージャー+マルチポート+5V+USB+ソーラー充電器+iPhone%2FiPad%2FAndroid%2F各種タブレット対応+★米国大ヒット商品★ 旅行・アウトドアに大活躍!+地震・災害時にも必携!
  • パワーフィルム+AAソーラーチャージャー+AAL-BL
  • ソーラー充電器【Solar+Charger(ソーラーチャージャー)】大容量3500mAh%2FiPhone、iPhone5C+iPhone5S、スマホ、各種携帯、ゲーム機対応【ホワイト】

linked by blog-tools

タブレット向けサイトのサイズがうまく出来ないときの対処法

この1年、タブレット向けのサイトを作る機会が増えてきたので実際の解像度とブラウザーの表示サイズが異なることで起こる問題の対処法をまとめました。

ランドスケープ表示とポートレート表示、双方できれいなレイアウトで見せたいとき

ターゲットとするタブレットのアスペクト値によって多少変わりますが、CSS3のmediaqueriesを使い、2サイズをだし分けるのが最も簡単で失敗しない方法だと思います。JavaScriptで回転した際にviewportを書き直してもよいのですが、端末によって挙動や動きが異なる場合が多いので、mediaqueriesなどプログラムをなるべく使わない方法でレイアウトを変更するのが得策。
書き方は

@media screen and (max-width: 820px) {/*820pxまでのサイズのとき*/body{}...}
@media screen and (min-width: 820px) {/*820px以上のサイズのとき*/body{}...}

といった書き方になります。

実際の解像度で作ったところ、拡大表示されてしまうとき

viewportをwidth=device-widthで設定したにもかかわらず、拡大表示される場合があります。
その場合はinitial-scaleを1以下の数字にして縮小表示させることでタブレットのサイズに合わせます。
たとえば
<meta name=”viewportcontent=”width=device-width, initial-scale=0.66,minimum-scale=0.66,maximum-scale=2” />
といった書き方。

微妙に横幅が大きくなり、スクロールしてしまうとき

viewportやmediaqueriesを使い、サイズを合わせたものの、微妙に幅が合わず、スクロールが出てしまうときはCSSでbodyや一番外側のブロック要素にoverflow-x:hiddenの設定を追加します。
そもそもの改善にはなりませんが、横スクロールしなくなり、ユーザビリティが多少改善されます。

リキッドレイアウトを活用して様々なサイズに対応させる。

スマートフォンやタブレットでは出来る限り画面サイズ幅いっぱいにコンテンツを表示させたいので、幅指定を100%にすることを前提に、スマートフォンとタブレットでのコンテンツ表示を共有する場合やレスポンシブデザインを行う場合にはmediaqueriesを使い、全体幅とブロック要素の回り込み、表示非表示を制御します。

アドレスバーを非表示にする+ひと工夫

スマートフォンでもよく使われる方法ですが、JavaScriptを使い、アドレスバーを消すことで画面の高さーステータスバーの高さをコンテンツに当てることが出来ます。ランドスケープの場合ファーストビューの領域がアドレスバーで削られてしまうときの弊害が大きいので下のようなスクリプト(jQuery)を追加することで対処します。

function onloadpage(){
	setTimeout(function(){
	var h = $("body").scrollTop();
	if(h==0){
	setTimeout(function(){ window.scrollTo(0,1); },110);
	setTimeout(function(){ window.scrollTo(0,0); },111);
	}
	},100);
}

読み込み中にユーザーがスクロールしているときには動作しないよう、スクロールを検知するようにしています。
気になるところはご指摘いただければ対応します。また何かわかれば追記します。

タブレットやスマートフォン向けサイトを画面サイズに合わせてviewportを変える際のTips

タブレットやスマートフォン向けのサイトを作っているときにぶち当たる問題が端末の画面に対するデザインのサイズ設定。

デザインもリキッドレイアウトをメインにしつつブロック要素で構成していたりすると画面を回転させたとき、幅が可変にならず右に余白が。。。。といったことがあったのでその対処法も少しばかり載せておく。

一般的に画面が回転するとそれに応じてブラウザの縦、横幅のサイズも入れ替わるはずなのだが、一部には入れ替わらないものがあり、そのときの対処を考えるのに無駄に時間がかかったりしてしまう。

自分がいろいろ探して見た結果、回転したときの角度を取得してそれに応じて画面幅をviewportにJavaScriptで振り分ける方法が比較的簡単に適応できる方法だとわかりました。

JavaScriptで window.orientation を使うと角度が取得できる。

自分が検証に使った端末は横長のときに0度or180度、
縦長のとき90度、-90度と表示されていたので、
縦横が入れ替わらない場合の設定は(jQuery使用)

var orientation = window.orientation;
//角度の取得

if((orientation == 0)||(orientation == 180)){
//横長のときの設定
var hscale = $(window).width();
var wscale = $(window).height();
}else{
//縦長のときの設定
var wscale = $(window).width();
var hscale = $(window).height();
}
var viewport = $(‘meta[name=”viewport”]’);
$(全体幅を指定している要素).css({width:wscale});
viewport.attr(‘content’, ‘width=’+wscale+’, initial-scale=1, maximum-scale=1′);

といった感じで設定。

よりシームレスにするには画面幅に応じていくつかレイアウトデザイン(max-width?など)を定めた上で行うと効果的。

未だ少し理解できていないAndroid OS2.Xと3.Xのブラウザのviewport周りの挙動についてわかり次第またかきます。

jQueryを使ってスマートフォン向けにフォントサイズをリサイズ

cdbk.net CREATIVES のサイトをスマートフォンでも文字が読めるよう、フォントサイズを可変できるようなjQueryのスクリプトを入れたので紹介。
JavaScriptのソースをべた書きするとこんな感じ

$.browser.android = /android/.test(navigator.userAgent.toLowerCase());
$.browser.iphone = /iphone/.test(navigator.userAgent.toLowerCase());
$.browser.ipod = /ipod/.test(navigator.userAgent.toLowerCase());
function fontsizeset(){
        var defaultwidth = 480;//スマートフォンのデフォルト想定幅
        var fsize = 20;//デフォルトフォントサイズ
        var devicewidth = $(window).width();
        var docwidth = $(document).width();
        var deviceheight = $(window).height();
        var docheight = $(document).height();
        if(devicewidth>deviceheight){
        var resizelength = Math.round((deviceheight / defaultwidth ) * 100)/100;
        }else{
        var resizelength = Math.round((devicewidth / defaultwidth ) * 100)/100;
        }
        var newfsize = fsize * resizelength;
        if(( $.browser.android )||( $.browser.iphone )||( $.browser.ipod )){
        $("body").animate({"font-size": newfsize},"slow");
        }
}
$(document).ready(function(){
        $(window).bind('resize load', function(){
                fontsizeset();
        });
        $(window).load(function(){
                fontsizeset();
        });
});

タブレットでの表示は通常表示を前提に、スマートフォンで極端に小さくなってしまうフォントサイズを端末の幅に合わせて可変するスクリプト。
端末の表示幅は2011年春•夏に発売されている端末の多くが採用している480pxをベースに幅に合わせて指定しているフォントサイズが変更される仕組みにしています。また、横長にしたときは縦、横、短い方を基準にリサイズするようにしているので極端にサイズが大きくなることはないようになっています。
可変スクリプトを「ON」にした状態のサイトはこちら
今後、スマートフォンもHD対応のサイズが主流になりつつある中、端末に応じたCSSをかき分けるのも方法なのですが、こういった方法もあるということで紹介しました。
 
 

  • jQuery+Mobile+スマートフォンサイト+デザイン入門+(WEB+PROFESSIONAL)
  • Web制作の現場で使う+jQueryデザイン入門+(WEB+PROFESSIONAL)
  • JavaScript本格入門 ~モダンスタイルによる基礎からAjax・jQueryまで
  • Webデザイナーのための+jQuery入門 魅力的なユーザーインターフェースを手軽に作る+(Books+for+Web+Creative)
  • jQueryデザインブック 仕事で絶対に使うプロのテクニック
  • JavaScript+%26+jQueryレッスンブック―最新jQuery対応
  • 10日でおぼえる+jQuery入門教室
  • jQuery+Mobile
  • jQueryクックブック

linked by blog-tools

FiiO E5手のひらサイズのヘッドホンアンプ


バッテリー内蔵型の小さなヘッドホンアンプ。
価格は4000円以下で手に取りやすい価格。
コントロールできるのは電源、音量、ベースブートのみというシンプルな設計で給電はmini USB端子、クリップがついているのでiPodなどのオーディオプレーヤーとヘッドホン、イヤホンとの間にリモコンのようにつけることもできる。
肝心な音質は、値段相応?といったところ。今のヘッドホンじゃ何か物足りないという場合にいい効果をもたらしてくれるだろうといったところ。
実際、音楽をというよりもPSPやDSなどのゲーム機で使った方が効果は絶大で音の迫力が出ました。
他社製品の情報としてはオーディオテクニカが年末から初春にかけてヘッドホンアンプ関連の製品を出すので、そちらも気になります。
AT-PHA30iのレビューはこちら
とはいえFiiO、実は中国のメーカー。製品の精度は国内のものとさほど変わらない。いよいよ本格的に中国勢の日本進出?
[追記]もう少しいい音でと言う人にはドックコネクターに直接FiiO E5を繋げて聴くことをお勧めします。
そのための製品はaudiotrakの「AT-iap1」。

ネットブックのウインドウサイズを見た目より広くしてしまう方法


ネットブックを使ってみるとこのブログやウインドウのサイズを指定して開かれるページがあるとすごく操作しにくいところがあったので、自分は実際のスクリーンより広く使えるように設定をしてみました。そのキャプチャーを載せておきます(Windows XP)
1. .画面のプロパティを押して「設定」タブを選択
2. 「詳細設定」をクリックして出てきたウインドウの「モニタ」タブを選択
3. 「このモニタでは表示できないモードを隠す」のチェックを外し、「適用」をクリックしたあと「アダプタ」タブをクリック
4. 「モードの一覧」をクリックして出てきたウインドウで希望のウインドウサイズ、ビットレートを選択し、「OK」をクリック
5. そして、「適用」→「OK」を押す。
6. 完了。
以上でスクリーンより広い設定を行うことができます。カーソルを端に寄せるとスクロールして表示してくれるようになります。