xmlエラー ドキュメント要素の後ろに不正な文字列があります。

Webデザイン

xmlにアクセスしてみて、
XML パースエラー: ドキュメント要素の後ろに不正な文字列があります。
というエラーが出たときの対処法

以下のような構造だとエラーが出ます

<?xml version="1.0" encoding="UTF-8"?>
<item>
<name>aaa</name>
<price>100</price>
</item>
<item>
<name>bbb</name>
<price>300</price>
</item>

xml直下をひとつにくくってやると、解決です
例だと<data> </data>にあたります

<?xml version="1.0" encoding="UTF-8"?>
<data>
<item>
<name>aaa</name>
<price>100</price>
</item>
<item>
<name>bbb</name>
<price>300</price>
</item>
</data>

css3のdisplay:box;の折り返し

Webデザイン

css3のboxで、改行というか、折り返しがされなくて悩みました。
文字が多いとそのまま突き抜けます。

しかし、以下を小要素に指定すればあっさり解決。

word-wrap: break-word;
word-break: break-all;

boxて便利。。

 

スマホサイトでアドレスバーを消す

Webデザイン

スマホサイトで、アドレスバーを消す方法です
これによってファーストビューを多めに確保できます

function doScroll() { if (window.pageYOffset === 0) { window.scrollTo(0,1); } }
window.onload = function() { setTimeout(doScroll, 100); }

Y方向に1pxでも動いていると、アドレスバーが消えるようです
iPhone用に実行するタイミングをずらしています

外部jsに入れて、全ページ共通で読み込むとよいですね

幅指定なしでfloatを使う

Webデザイン

overflow:hidden;でclearfixするに続きまして、幅指定なしでfloatを使う方法です

テキスト回り込みさせる

.main {
overflow:hidden;
}
.leftClm {
float:left;
}

テキスト回り込みさせる

テキスト回り込みさせない

.main {
overflow:hidden;
}
.leftClm {
float:left;
}
.rightClm {
overflow:hidden;
}

テキスト回り込みさせる

スマホサイトだと幅が可変なので、数値指定できないですよね
そんなときに使っています

 

overflow:hidden;でclearfixする

Webデザイン

モダンブラウザではoverflow:hidden;だけでclearfixできます
floatをかけている親要素に指定すればok

overflow:hidden;

わざわざclearfixのクラスを作らなくてよくなりますし、
モジュールに指定するclassが減るのでhtmlもすっきりします
IE6ではきかないようですが、、
対象がモダンブラウザだけであれば、とっても有効
スマホサイトだったら使えそうなので嬉しいですね

hetemlで拡張子htmlでphpを動かす

Webデザイン

hetemlサーバを使っているのですが、
拡張子htmlでphpが動くようにしたいと思いまして
.htaccessに

AddType application/x-httpd-php .html

と書いたのですが、動かない、、
サーバの問題かなと思ったら
ココ↓に載ってました
http://php-web.net/web/php-htaccess.html

AddHandler php4-script .html
※PHP4 を利用したい場合
AddHandler php5-script .html
※PHP5.2 を利用したい場合
AddHandler php5.3-script .html
※PHP5.3 を利用したい場合

で解決です。
サーバによるのでちゃんと見ないとですね。。