最近書かれた記事5件分を表示します。
更新状況をRSS 1.0形式でご覧になれます。
またもやOperaにアドレス・バーを偽装されるセキュリティ・ホール(IT Pro)で、Opera 7.51にアドレスバーを偽装される問題が見つかったと報じられています。この問題は、JavaScriptをオフにすることで回避できるとのことです。
今月初め、Opera 7.50でOperaにセキュリティ・ホール,「ファビコン」でアドレス・バーを偽装できる(IT Pro)という問題が見つかり、その不具合を修正したバージョンとして7.51がリリースされましたが、このバージョンでも偽装問題が発見されています。
この不具合を修正した7.52?が近い内にリリースされると思いますが、Operaの日本語版(livedoor Opera)は、またリリースが遅れるのでしょうか。英語版で事足りているので影響はないものの、気になるところです。
先日、海外のサイトでKibiByte(省略形はKiB)なる表示を見つけました。今まではk=1000(103)、K=1024 (210)と解釈されていましたが、これは十進法と二進法で同じ接頭辞(差異は大文字か小文字か)を用いているため、誤解の生じることが多くありました。1998年12月、二進法に基づく新たな接頭辞がIECで承認されており、kibiはそのひとつです。
Prefixes for binary multiples Factor Name Symbol Origin Derivation 210 kibi Ki kilobinary: (210)1 kilo: (103)1 220 mebi Mi megabinary: (210)2 mega: (103)2 230 gibi Gi gigabinary: (210)3 giga: (103)3 240 tebi Ti terabinary: (210)4 tera: (103)4 250 pebi Pi petabinary: (210)5 peta: (103)5 260 exbi Ei exabinary: (210)6 exa: (103)6
Prefixes for binary multiples - Physics Laboratory of NISTより引用
例えば、メモリの容量は二進法で表記されていますが、HDDの容量表示は十進法です。容量200GBのHDDの場合、1000換算では200GBを満たす計算になりますが、1024換算では公表値より10GB以上も少なくなってしまう
という話が1,000換算と1,024換算が混在するコンピュータの世界(伊勢雅英のIT見聞録)で挙げられています。
承認されてから5年以上が経ちますが、Googleでkibibyteを検索してみると、日本語のページで11件、すべての言語から検索しても2060件とあまり広まっていないようです(2004-06-21現在)。
折角知ったので、機会があれば使ってみたいと思います。ただし、URIと同様にabbrによるマークアップが必要ですね。
少し前に「divはあまりよくない」というような内容(うろ覚え)が書かれているサイトを見てから、できるだけ使用を控えようと思っていました。構造が複雑ではないサイトならば実現できるだろうと考え、一度、divを全く使わないでマークアップし直してみましたが、幾つかの問題点に気がつきました。
いくら「divはあまりよくない」と言われていても、これではマークアップすること自体が大変になります。これをどう解決するかを考えている時、ぽかぽかWeb研究室のリソースが目に留まりました。そのリソースでは、divの使用について次のように述べられています。
セマンティックウェブを視野に入れる上で大事なのは、飽くまで「構造とマーク附けが一致しており」「記述が終止一貫」しているかどうかであり、単に明示していさえすれば良いわけではありません。
私自身、 div などを用いたセクションを作成すること自体を否定するわけではないし、それがプログラム処理にとっては好都合であるのは理解出来ます。ただ一つ言いたいのは「中途半端で恣意的な明示は逆効果である」ということだけなのです。
見出し構造とツリー構造明示 - ぽかぽかWeb研究室より引用
中途半端で恣意的な明示は逆効果である
というくだりに納得させられました。どこかで見かけた「divはあまりよくない」という話の一部だけが頭に残っていたようです。divを使わないで以前同等のスタイルを表現することは可能でしたが、前述した問題点は解決できません。やはり、これからも記述が終止一貫
するよう心掛けてdivを使うことにします。
少々思い過ごしていました。
文書構造を少し修正するにあたり、スタイルシートにも変更を加えました。この変更は次の事項に主眼を置いています。
ブラウザが内蔵しているスタイルシートの違いによって、細かい部分で見え方が異なります。これは当然のことですが、大きな実装ミスのないこれらのブラウザであれば、見え方を近づけることが可能です。
今回問題となったのは、ul要素に設定されているレフトマージン(margin-left)でした。Opera 7.51では、ul要素に2.5emのレフトマージンが設定されています(margin-left: 0;を指定すると左に2.5em移動)が、Mozilla 1.6ではレフトマージンが設定されていません(同様の手法で変化なし)。
しかしながら、どちらのブラウザもほぼ同じ位置にul要素をレンダリングします。この条件でul要素にmargin-left: 1em;を指定すると、どう見えるのでしょうか。
それぞれ次のように解釈しているようです。
Opera 7.51でmargin-left: 0;を指定した時の位置を基準位置とすると、margin-left: 1em;の指定はOperaでは1emと解釈され、Mozillaでは(レンダリング位置が同じことから)2.5em+1emで3.5emと解釈されることになります。
この場合は、スタイルシートでmarginを指定しないことで解決できます。また、ul要素にmargin、paddingの両方を同じ値で設定することによっても解決可能です。これとは違うケースで、marginを消す(margin-left: 0;)ことによって解決できた要素もありました。
emは、フォントサイズを基準にして算出される単位です。テクスト周りのmargin、paddingをemで指定しておくと、フォントサイズに応じて適切な余白が作成されます。
Relative units are:
- em: the 'font-size' of the relevant font
- ex: the 'x-height' of the relevant font
- px: pixels, relative to the viewing device
CSS2 syntax and basic data types - W3Cより引用
今まではパーセンテージによる指定を併用していましたが、emに統一することによってレイアウトの作業が楽になりました。
半月前に7.50がリリースされたばかりですが、幾つかの問題を修正した7.51が昨日リリースされました。次のURIからダウンロードできます。
7.50(build 3778)では、稀にマウスジェスチャーなどの操作を受け付けなくなることがありました。そのため、正式版がリリースされてからも7.50 Beta 1(build 3733)を使い続けていましたが、Opera 7.51 for Windows Changelogには「安定性が改善された」とあるので、しばらく7.51を使ってみようと思います。
7.50に発見された脆弱性も修正されているそうです。
2004-06-06 01:59追記