このブログを検索

大文字小文字を区別する 正規表現

Atelierで“break”が含まれるブログ記事

2019年6月 1日

隠居の散策:泉北ニュータウンの春(2)栂・美木多地区

令和を祝しての10連休は、年寄りは出歩かないのが賢明である。近辺を散策するくらいが、ちょうどよい活動である。
 改元になったといって、自然がそんなに急激に変化するわけではない。平成の間に観察してきた花が同じように咲き、蝶も鳥も、季節に合わせるように活動を始めている。
 ただ、今回の散策では、子連れのケリに出会った。親鳥が4羽、けたたましく威嚇して啼いて飛び回る近くに寄ってみるとまだ飛ぶことのできない雛2羽がよちよち歩いていた。
 androidのアプリにある【シンプル植物リスト-雑草編-】にも載っている。このシリーズのアプリには、【樹木編】などがあり、戸外でちょっと探すには役たちである。

ケリの啼き声

音声を再生するには、HTML5をサポートしたブラウザが必要です。

190505_012.jpg 2019/5/5 野々井(堺市)
ヘラオオバコ
今年もあちらこちらで、群生しだした。頭に突き出している穂の周りの土星の輪のように白い輪はおしべである。

SONY α7Ⅱ+ Sigma18-300mm
合成写真 50.0mm 1/250 f/8.0 ISO100 EV 0
190505_010.jpg 2019/5/5 野々井(堺市)
サトキマダラヒカゲの交尾?
畑の脇の樹木に、3頭がひらひらしていた。

SONY α7Ⅱ+ Sigma18-300mm
140.0mm 1/200 f/6.7 ISO100 EV 0
190505_009.jpg 2019/5/5 野々井(堺市)
シロツメクサにベニシジミ
この夏はベニシジミが多い。

SONY α7Ⅱ+ Sigma18-300mm
230.0mm 1/250 f/6.7 ISO100 EV 0
190505_005.jpg 2019/5/5 野々井(堺市)
ノバラ
雑草的に、あちらこちらに白い花をさかせている。

SONY α7Ⅱ+ Sigma18-300mm
75.0mm 1/60 f/5.6 ISO100 EV 0
190505_006.jpg 2019/5/5 野々井(堺市)
スイレン
真言宗西性寺の近くにある荒池というため池に、スイレンが咲いている。

SONY α7Ⅱ+ Sigma18-300mm
160.0mm 1/60 f/11.0 ISO100 EV 0
190505_002.jpg 2019/5/5 桃山台(堺市)
タチアオイ
歩道にボランティアの方が、育てられいる。

SONY α7Ⅱ+ Sigma18-300mm
70.0mm 1/30 f/11.0 ISO100 EV 0
190505_003.jpg 2019/5/5 桃山台(堺市)
シラン
タチアオイと同じように歩道にボランティアの方が、きれいに咲かせておられる。

SONY α7Ⅱ+ Sigma18-300mm
130.0mm 1/30 f/6.7 ISO100 EV 0
190506_007.jpg 2019/5/6 檜尾(堺市)
クサフジとノバラ
一度底浚いした川床に、以前と同じように、クサフジとノバラなどが繁茂しだした。モンシロチョウがひらひらと訪れる。

SONY α7Ⅱ+ Sigma18-300mm
230.0mm 1/125 f/6.7 ISO50 EV 0
190506_005.jpg 2019/5/6 檜尾(堺市)
ケリ親子
ケリの親子を観察するのは初めてである。用心深く近づくと、けたたましく啼いて上空を舞う。

SONY α7Ⅱ+ Sigma18-300mm
270.0mm 1/500 f/6.3 ISO100 EV -0.3
190506_003.jpg 2019/5/6 檜尾(堺市)
ケリの幼鳥
巣がどこかにあったのかもしれない。幼鳥は、まだ飛び立てない。

SONY α7Ⅱ+ Sigma18-300mm
210.0mm 1/500 f/6.7 ISO100 EV 0
190506_002.jpg 2019/5/6 檜尾(堺市)
親子を威嚇
他の成長3羽が親子を威嚇してきた。目的はよくわからない。

SONY α7Ⅱ+ Sigma18-300mm
210.0mm(crop) 1/500 f/6.7 ISO100 EV 0
190506_001.jpg 2019/5/6 檜尾(堺市)
ケリ成鳥
大きな口を開けて、啼いていた。

SONY α7Ⅱ+ Sigma18-300mm
300.0mm(crop) 1/500 f/6.7 ISO100 EV 0
190506_012.jpg 2019/5/6 檜尾(堺市)
メマツヨイグサ?
マツヨイグサ 、オオマツヨイグサ 、コマツヨイグサ 、アレチマツヨイグサ など仲間が多い。いちどしっかり同定したい。

SONY α7Ⅱ+ Sigma18-300mm
180.0mm 1/250 f/6.7 ISO100 EV 0
190506_011.jpg 2019/5/6 檜尾(堺市)
カラスノエンドウの実
花期はとうに終わって、たわわに実がなっている。

SONY α7Ⅱ+ Sigma18-300mm
100.0mm 1/200 f/6.7 ISO100 EV 0
190506_010.jpg 2019/5/6 檜尾(堺市)
ニワゼキショウの群落
花のいろは、紫または白紫である。

SONY α7Ⅱ+ Sigma18-300mm
(合成写真) 45.0mm 1/90 f/11.0 ISO100 EV 0
190506_015.jpg 2019/5/6 檜尾(堺市)
アヤメ?
菖蒲(あやめ)・菖蒲(しょうぶ)・かきつばたの違いは花をよく観察しないと難しいようだ。

SONY α7Ⅱ+ Sigma18-300mm
50.0mm 1/200 f/8.0 ISO100 EV 0


2019年1月28日

隠居のPC備忘録:ブログ記事を印刷する

ブログ記事をパソコンの画面だけではなく、ハードコピーにして残しておきたいという要求もある。私たちのテンプレート(スタイル)では、画面に表示されているそのまま印刷すると右サイドカラムやヘッダー・フッターが印刷されることになる。
 MT7にバージョンアップする前には、本文の記事と写真サムネイルだけをプリントあるいは PDF化しておくことができるようにカスタマイズしていたが、バージョンアップしてから、そのときのカスタマイズがなくなってしまっていた。どうしてやったのかと過去のブログの記録を探してみたが、見つからなかった。ちゃんと記録しておかなったようだ。
 それで、新たにググッてみると、以前に実施した思える方法が見つかった。Print 用の CSS を作成し、印刷するときには、その CSS を使用するように、HTML のコードに指示すればいいことがわった。
 これで、右サイドカラムやヘッダー・フッターが印刷されることはなくなったが、ただブラウザごとに異なる結果となる。特に、初めて print用カスタマイズを設置したときには存在していなかった Microsoft Edge での印刷が一番芳しくなく、Internet Explorer がもっとも良い結果であった。
 参照例:印刷時にのみ有効となるスタイルシートを設定する方法

 ただ、この方法で右サイドカラムやヘッダー・フッターが印刷されることはなくなったが、印刷時に、適切な位置でページ替えをする方法が見つからなかった。このような事案の解決は、Web ページの先進国である英語圏のページでヒットすることが多い。
 [CSS for print] というようなフレーズでググッてみると、以下のような英語のページがヒットした。
 How to Create Printer-friendly Pages with CSS
 このページに、求めていた記述があった。【Page Break】の部分である。  表を印刷するとき、表の途中で印刷が切れてしまわないようにするには、次のような CSS を記述すればよいことがわかった。実際に、print 用 CSS に記述してみると表の印刷前にページ替えが実行される。

table { 
page-break-inside: avoid;
break-inside: avoid;
}

私達のブログでは、表の中で、左に(あるいは右に)サムネイル写真、その隣に写真の説明文といった構成で一枚づつの写真を行替えしていることが多い。それで、上述の CSS を真似て、table 要素を table の子要素である tr にしてみるとテーブル内の行替えでページ印刷されるようになった。Page Break を十分に理解はできていないが、とりあえず満足している。
 今の所、Google chrome が一番期待に答えてくれている。
 現在、導入している CSS は以下のようなものである。
/* print.css */    
header, footer, aside, nav, form, iframe, .menu, .hero, .adslot {  
display: none;  
}   

tr {  
page-break-inside: avoid;  
break-inside: avoid;   
}  

2013年3月28日

隠居のドライブ:南紀の私的観光地図とその作成方法。


 南紀をドライブしたときの訪問地点を地図にプロットしてみた。地図作成に使ったのは、【隠居のパソコン備忘録: Google Maps API JS V3 で、番号付きマーカーを表示する】で記録した方法である。この地図は、右メニューの観光地図一覧に【初春の南紀私的観光地図】として追加した。



 この地図を作るためには、Google Map を表示するための HTML ファイルと、このページに呼び込んでくる XML ファイルを記述する必要がある。いずれも、宍道湖周辺を旅行した時の地図を作ったファイルをコピーして作成した。
 html ファイルはテキスト編集ソフト【秀丸】で、xml ファイルは Microsoft が提供する【XML Notepad】で修正をした。XML ファイルは、秀丸でも編集できるが、このXML Notepad は、XMLファイル編集に特化しており、文法の間違いも指摘してくれるので助かる。

 html ファイルで修正・追加する箇所は次の青字部分である。

90行目あたり、
     case "num05": num = "05";
                break;
     case "num06": num = "06";
                break;
--------------------------------------------------------------------------
に、次を追加する。番号マークは、7番目まで設定したので。
    case "num07": num = "07";
                break;  

103行目あたり
    gicons["num05"] = getMarkerImage(category2num("num05"));
      gicons["num06"] = getMarkerImage(category2num("num06"));
-----------------------------------------------------------------------------------
 に、次を追加する。
      gicons["num07"] = getMarkerImage(category2num("num06"));

184行目あたり、
zoom: 10,
      center: new google.maps.LatLng(35.430603,133.012136),   //松江
      zoom: 10,
--------------------------------------------------------------------------------------------------
を、次の地点の経度・緯度に変更する。もう少し、拡大したい場合は、zoom を11と大きくする。

   center: new google.maps.LatLng(33.676354,135.677032),   //熊野古道中辺路道の駅
   zoom: 10,     

193行目あたりの 読み込む xml ファイルを新しい xml ファイルに変更する。
      downloadUrl("http://n-shuhei.net/atelier/maps/V3_sinnjiko_num.xml", function(doc) {
----------------------------------------------------------------------------------------------------------------
      downloadUrl("http://n-shuhei.net/atelier/maps/V3_kisyuu_num.xml", function(doc) {  

221行目あたり、
<tr><td align="center"style="width:1000px; background-color: #ffffe0;" ><br /><h2>晩秋の宍道湖私的観光地図</h2></td></tr>
--------------------------------------------------------------------------------------------------------------
地図のタイトルおよび大きさを指定する。地図の幅を指定する箇所はもう一箇所ある。
<tr><td align="center"style="width:700px; background-color: #ffffe0;" ><h2>初春の南紀州観光地図</h2></td></tr>      
<tr><td><div id="map" style="width: 700px; height: 500px"></div></td></tr><tr>


読み込む XML ファイルは、XML Notepad を使って、宍道湖の地図を作った時のファイルをもとに、番号マークをプロットする地点の経度・緯度とプロット地点の名前や紹介する写真リンク先を 入力すればよい。リンク先のURL などは、ブログのソースを使えば簡単である。参考までに、作成した XMLファイルは次のようなものである。


<?xml version="1.0" encoding="utf-8"?>
<markers>
 <marker name="1:志原海岸" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_024.jpg" title="志原海岸" rel="lightbox[nanki]">志原海岸</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_003.jpg" title="ハマダイコン:志原海岸" rel="lightbox[nanki]">ハマダイコン</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_004.jpg" title="イソヒヨドリ:志原海岸" rel="lightbox[nanki]">イソヒヨドリ</a>" lng="135.431213" lat="33.570291" category="num01"/>
 <marker name="2:串本海中公園" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_020.jpg" title="水中トンネル:海中公園" rel="lightbox[nanki]">水中トンネル</a>" lng="135.745783" lat="33.481639" category="num02"/>
 <marker name="3:串本ロイヤルホテル" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_023.jpg" title="露天風呂:串本ロイヤルホテル" rel="lightbox[nanki]">露天風呂:串本ロイヤルホテル</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_021.jpg" title="日の出:串本ロイヤルホテル" rel="lightbox[nanki]">日の出</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130322_028.jpg" title="小雨にけぶる橋杭岩:串本ロイヤルホテル" rel="lightbox[nanki]">小雨にけぶる橋杭岩</a>" lng="135.784836" lat="33.481281" category="num03"/>
 <marker name="4:潮岬" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_009.jpg" title="潮岬灯台" rel="lightbox[nanki]">潮岬灯台</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130322_027.jpg" title="潮岬から太平洋を望む" rel="lightbox[nanki]">潮岬から太平洋を望む</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_007.jpg" title="ジョウビタキ雌:潮岬" rel="lightbox[nanki]">ジョウビタキ雌</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_008.jpg" title="トビ:潮岬" rel="lightbox[nanki]">トビ</a>" lng="135.762500" lat="33.433055" category="num04"/>
 <marker name="5:樫野崎灯台" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_010.jpg" title="樫野崎灯台" rel="lightbox[nanki]">樫野崎灯台</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_025.jpg" title="樫野崎から潮岬の眺望" rel="lightbox[nanki]">樫野崎から潮岬の眺望</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_013.jpg" title="樫野崎から太平洋の眺望" rel="lightbox[nanki]">樫野崎から太平洋の眺望</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_012.jpg" title="内海側の定置網" rel="lightbox[nanki]">内海側の定置網</a>" lng="135.86259" lat="33.473263" category="num05"/>
 <marker name="6:那智の滝" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_018.jpg" title="那智の滝" rel="lightbox[nanki]">那智の滝</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_014.jpg" title="那智の滝への石段" rel="lightbox[nanki]">那智の滝への石段</a>" lng="135.887704" lat="33.675069" category="num06"/>
 <marker name="7:熊野那智大社" address="<a href="http://n-shuhei.net/atelier/photo_drive/130321_016.jpg" title="熊野那智大社" rel="lightbox[nanki]">熊野那智大社</a><br /><a href="http://n-shuhei.net/atelier/photo_drive/130321_015.jpg" title="イソヒヨドリ:熊野那智大社" rel="lightbox[nanki]">イソヒヨドリ</a>" lng="135.890236" lat="33.668533" category="num07"/>
 </markers>


なお、地図作成と直接関連していないが、Internet Explorer 9 では、ページを編集・更新して、サーバーにアップロードしてもも反映されないことが起こった。(Google Chrome ではすぐに反映される) IE8 のときと違って更新されるタイミングが異なるようだ。
 このようなときは、IE9 で ツール⇒インターネットオプション⇒全般タグ⇒閲覧の履歴の設定で、出てくるポップアップ画面で、インターネット一時ファイルの選択を【Web サイトを表示するたびに確認する】(default では 自動的に確認する となっている)を選択すれば治るようだ。

 

2012年9月22日

隠居のパソコン備忘録: Google Maps API JS V3 で、番号付きマーカーを表示する

 
 従来、右フレームの【晩秋の宍道湖私的観光地図】は、Google Maps API のV2版で作成したものを置いていた。V2 でかいた地図はまだ動くが、2010年5月に廃止されており、V3 へ移行することが奬められている。
 この地図では、必要性はあまりないが、マーカーに番号を表示させていた。新しく V3 で作りなおすときにも、学習も兼ねて番号を表示させたかった。

 ところが、番号入りマーカーを表示するサンプルコードが見つからない。V2 で作成したコードを V3 に置き換えることも試みたが、悲しいかな十分な知識がないし、一から勉強する意欲もないので、うまく行きそうにない。
 今までに成功した V3 のコードを眺めていると【Google Maps API JS V3 で、カテゴリー別に色違いマーカーを表示する】 で使ったコードを、わかる範囲でいじってみれば、なんとかなるのではないかと思われた。色違いのマーカーを、番号付きマーカーに置き換えるのである。この地図では、category 別に赤・青・黄色・緑などのマーカーにしているが、これを番号つきのマーカーに置き換えるのである。また、また、一つずつのマークを、一つのカテゴリーと考えるのである。
 このコードでは、マーカーを立てる地点の経度・緯度や吹きだしに表示するHTMLなどは、XML ファイルを読み込んでくることになっている。V2 で作成した地図では、HTMLの中に直接入力されていた。

 とりあえずうまく表示できるようなので、自分用の備忘録として、XML ファイルおよびHTML コードを記録しておきたい。よくわかった人から見れば、へんてこなコードとなっていると思うが、古希を超えるとほとんど羞恥心はなくなっている。

使用したXML ファイル。項目 category は num01, num02・・・のようになっている。
<?xml version="1.0" encoding="utf-8" ?> 
- <markers>
  <marker name="1:宍道湖温泉" address="   <a href="http://n-shuhei.net/atelier/photo_drive/DSC_4820-1.JPG" title="宍道湖の夕焼け" rel="lightbox[sinjiko]">宍道湖の夕焼け</a><br/>   <a href="http://n-shuhei.net/atelier/photo_drive/DSC_4831.JPG" title="宍道湖の朝" rel="lightbox[sinjiko]">宍道湖の朝</a>" lng="133.053875" lat="35.469199" category="num01" /> 
  <marker name="2:米子水鳥公園" address="   <a href="http://n-shuhei.net/atelier/photo_digisco/DSC01539.JPG" title="コハクチョウ" rel="lightbox[sinjiko]" >コハクチョウ</a><br/>   <a href="http://n-shuhei.net/atelier/photo_digisco/DSC01510.JPG" title="オナガガモ:♀を追いかける♂たち" rel="lightbox[sinjiko]" >オナガガモ</a><br/>   <a href="http://n-shuhei.net/atelier/photo_digisco/DSC01529.JPG" title="マガンの群れ:沖の州" rel="lightbox[sinjiko]" >マガンの群れ</a><br/>   <a href="http://n-shuhei.net/atelier/photo_digisco/DSC01591.JPG" title="キンクロハジロ?" rel="lightbox[sinjiko]" >キンクロハジロ</a>" lng="133.284674" lat="35.44333" category="num02" /> 
  <marker name="3:宍道湖グリーンパーク" address="   <a href="http://n-shuhei.net/atelier/video/digisco_1.wmv" target="_blank">コハクチョウ(video)</a><br/>   <a href="http://n-shuhei.net/atelier/photo_digisco/DSC01620.JPG" title="セグロセキレイ" rel="lightbox[sinjiko]" >セグロセキレイ</a><br/>   <a href="http://n-shuhei.net/atelier/photo_digisco/DSC01632.JPG" title="トビ?" rel="lightbox[sinjiko]" >トビ</a><br/>   <a href="http://n-shuhei.net/atelier/photo_birds/0911211.jpg" title="ジョウビダキ?" rel="lightbox[sinjiko]" >ジョウビダキ</a><br/>   <a href="http://n-shuhei.net/atelier/photo_drive/DSC_4872.JPG" title="ゴビウスにある水槽" rel="lightbox[sinjiko]">ゴビウスにある水槽</a>" lng="132.866077" lat="35.444729" category="num03" /> 
  <marker name="4:出雲大社" address="   <a href="http://n-shuhei.net/atelier/photo_drive/DSC_4886.JPG" title="出雲大社にて" rel="lightbox[sinjiko]">出雲大社にて</a>" lng="132.685919" lat="35.401434" category="num04" /> 
  <marker name="5:足立美術館" address="   <a href="http://n-shuhei.net/atelier/photo_drive/DSC_4908.JPG" title="足立美術館の紅葉" rel="lightbox[drive]">足立美術館の紅葉</a><br/>   <a href="http://n-shuhei.net/atelier/photo_drive/Stitched_003.JPG" title="枯山水の庭:3枚の合成写真" rel="lightbox[drive]">枯山水の庭</a><br/>   <a href="http://n-shuhei.net/atelier/DSC_4932.JPG" title="足立美術館:絵画を観ているように" rel="lightbox[drive]">仏間から庭を望む</a>" lng="133.198242" lat="35.377854" category="num05" /> 
  <marker name="6:米子自動車道大山PA" address="   <a href="http://n-shuhei.net/atelier/photo_drive/DSC_4720-1.JPG" title="雪化粧した大山:大山PAより" rel="lightbox[sinjiko]">大山の紅葉</a>" lng="133.419342" lat="35.386531" category="num06" /> 
  </markers>


 作成した地図作成の稚拙なHTMLコード(Google Maps API V3 のJavaScript を含む)は、右フレームに掲載している【晩秋の宍道湖私的観光地図】のソース・コードを見ていただければ、わかると思うが、参考までに下に記載し、少しのコメントを加えたいと思う。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 

<title>Google Maps Javascript API v3 Example: Marker Categories</title> 

<!-- jQuery lightbox2.51 -->
<script type="text/javascript" src="http://n-shuhei.net/atelier/Jquery2.51/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="http://n-shuhei.net/atelier/Jquery2.51/js/lightbox.js"></script>
<link rel="stylesheet" type="text/css" href="http://n-shuhei.net/atelier/Jquery2.51/css/lightbox.css" media="screen" />

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
<script type="text/javascript" src="http://n-shuhei.net/atelier/maps/V3test/downloadxml.js"></script>
    <title>Google Maps</title>
<style type="text/css">
html, body { height: 100%; } 
</style>
    <script type="text/javascript">
    //<![CDATA[
      // this variable will collect the html which will eventually be placed in the side_bar 
      var side_bar_html = ""; 
      var gmarkers = [];
      var gicons = [];
      var map = null;
var infowindow = new google.maps.InfoWindow(
  { 
    size: new google.maps.Size(150,50)
  });

gicons["01"] = new google.maps.MarkerImage("http://n-shuhei.net/Googlemaps/Markers/marker_01.png",
      // This marker is 20 pixels wide by 34 pixels tall.
      new google.maps.Size(20, 34),
      // The origin for this image is 0,0.
      new google.maps.Point(0,0),
      // The anchor for this image is at 9,34.
      new google.maps.Point(9, 34));
  // Marker sizes are expressed as a Size of X,Y
  // where the origin of the image (0,0) is located
  // in the top left of the image.
  // Origins, anchor positions and coordinates of the marker
  // increase in the X direction to the right and in
  // the Y direction down.

  var iconImage = new google.maps.MarkerImage('http://n-shuhei.net/Googlemaps/Markers/marker_01.png',
      // This marker is 20 pixels wide by 34 pixels tall.
      new google.maps.Size(20, 34),
      // The origin for this image is 0,0.
      new google.maps.Point(0,0),
      // The anchor for this image is at 9,34.
      new google.maps.Point(9, 34));
  var iconShadow = new google.maps.MarkerImage('http://n-shuhei.net/atelier/maps/V3test/msmarker.shadow.png',
      // The shadow image is larger in the horizontal dimension
      // while the position and offset are the same as for the main image.
      new google.maps.Size(37, 34),
      new google.maps.Point(0,0),
      new google.maps.Point(9, 34));
 
function getMarkerImage(iconNum) {
   if ((typeof(iconNum)=="undefined") || (iconNum==null)) { 
      iconNum = "01"; 
   }
   if (!gicons[iconNum]) {
      gicons[iconNum] = new google.maps.MarkerImage("http://n-shuhei.net/Googlemaps/Markers/marker_"+ iconNum +".png",
      // This marker is 20 pixels wide by 34 pixels tall.
      new google.maps.Size(20, 34),
      // The origin for this image is 0,0.
      new google.maps.Point(0,0),
      // The anchor for this image is at 6,20.
      new google.maps.Point(9, 34));
   } 
   return gicons[iconNum];
}

function category2num(category) {
   var num = "01";       
   switch(category) {
     case "num01": num = "01";
                break;
     case "num02": num = "02";
                break;
     case "num03": num = "03";
                break;
     case "num04": num = "04";
                break;
     case "num05": num = "05";
                break;
     case "num06": num = "06";
                break;
     default:   num = "01";
                break;
   }

   return num;
}

      gicons["num01"] = getMarkerImage(category2num("num01"));
      gicons["num02"] = getMarkerImage(category2num("num02"));
      gicons["num03"] = getMarkerImage(category2num("num03"));
      gicons["num04"] = getMarkerImage(category2num("num04"));
      gicons["num05"] = getMarkerImage(category2num("num05"));
      gicons["num06"] = getMarkerImage(category2num("num06"));
      // A function to create the marker and set up the event window
function createMarker(latlng,name,html,category) {
    var contentString = html;
    var marker = new google.maps.Marker({
        position: latlng,
        icon: gicons[category],
        shadow: iconShadow,
        map: map,
        title: name,
        zIndex: Math.round(latlng.lat()*-100000)<<5
        });

        // === Store the category and name info as a marker properties ===
        marker.mycategory = category;                                 
        marker.myname = name;
        gmarkers.push(marker);

    google.maps.event.addListener(marker, 'click', function() {
        infowindow.setContent(contentString); 
        infowindow.open(map,marker);
        });
}

      // == shows all markers of a particular category, and ensures the checkbox is checked ==
      function show(category) {
        for (var i=0; i<gmarkers.length; i++) {
          if (gmarkers[i].mycategory == category) {
            gmarkers[i].setVisible(true);
          }
        }

        // == check the checkbox ==
        document.getElementById(category+"box").checked = true;
      }

      // == hides all markers of a particular category, and ensures the checkbox is cleared ==
      function hide(category) {
        for (var i=0; i<gmarkers.length; i++) {
          if (gmarkers[i].mycategory == category) {
            gmarkers[i].setVisible(false);
          }
        }

        // == clear the checkbox ==
        document.getElementById(category+"box").checked = false;
        // == close the info window, in case its open on a marker that we just hid
        infowindow.close();
      }

      // == a checkbox has been clicked ==
      function boxclick(box,category) {
        if (box.checked) {
          show(category);
        } else {
          hide(category);
        }

        // == rebuild the side bar
        makeSidebar();
      }

      function myclick(i) {
        google.maps.event.trigger(gmarkers[i],"click");
      }

      // == rebuilds the sidebar to match the markers currently displayed ==
      function makeSidebar() {
        var html = "";
        for (var i=0; i<gmarkers.length; i++) {
          if (gmarkers[i].getVisible()) {
            html += '<a href="javascript:myclick(' + i + ')">' + gmarkers[i].myname + '<\/a>' + ' ' ;
          }
        }

        document.getElementById("side_bar").innerHTML = html;
      }

  function initialize() {
    var myOptions = {
      zoom: 10,
      center: new google.maps.LatLng(35.430603,133.012136),   //松江
      mapTypeId: google.maps.MapTypeId.HYBRID
    }
    map = new google.maps.Map(document.getElementById("map"), myOptions);
    google.maps.event.addListener(map, 'click', function() {
        infowindow.close();
        });

      // Read the data
      downloadUrl("http://n-shuhei.net/atelier/maps/V3_sinnjiko_num.xml", function(doc) {
  var xml = xmlParse(doc);
  var markers = xml.documentElement.getElementsByTagName("marker");
        for (var i = 0; i < markers.length; i++) {
          // obtain the attribues of each marker
          var lat = parseFloat(markers[i].getAttribute("lat"));
          var lng = parseFloat(markers[i].getAttribute("lng"));
          var point = new google.maps.LatLng(lat,lng);
          var address = markers[i].getAttribute("address");
          var name = markers[i].getAttribute("name");
          var html = "<b>"+name+"<\/b><p>"+address;
          var category = markers[i].getAttribute("category");
          // create the marker
          var marker = createMarker(point,name,html,category);
        }

        // == create the initial sidebar ==
        makeSidebar();
      });
    }

    //]]>
    </script>
  </head>

<body style="margin:0px; padding:0px;" onload="initialize()"> 
    <!-- you can use tables or divs for the overall layout -->
    <table border=1 >
<tr><td align="center"style="width:1000px; background-color: #ffffe0;" ><br /><h2>晩秋の宍道湖私的観光地図</h2></td></tr>      
<tr><td>
           <div id="map" style="width: 1000px; height: 500px"></div>
        </td></tr><tr>
<td valign="top" style="width:1000px; background-color: #ffffe0; font-size: small;"> 
 上の地図は、Google Mapsの機能を持っています。拡大・縮小・移動ができます。下の該当番号をクリックすると該当番号マーカーに吹きだしが出てきます。その吹き出しにある青文字をクリックすると写真(一部 動画)がでてきます。</td></tr><tr>
        <td valign="top" style="width:1000px; background-color: #ffffe0; font-size: small;"> 
           <div id="side_bar"></div>
        </td>
      </tr>
    </table>


    <noscript><b>JavaScript must be enabled in order for you to use Google Maps.</b> 
      However, it seems JavaScript is either disabled or not supported by your browser. 
      To view Google Maps, enable JavaScript by changing your browser options, and then 
      try again.
    </noscript>

<br /><br />
<!-- Google AdSense -->
<script type="text/javascript"><!--
google_ad_client = "pub-8556873278052332";
/* AdSense foot ad */
google_ad_slot = "1589991765";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
  </body>
</html>


  • 番号付きマーカーは、dLINKbRING というサイトからダウンロードできる
  • 表示する地図を、ラベル付き航空写真とするには、mapTypeId: google.maps.MapTypeId.HYBRID とすればよい。通常は、HYBRID の部分が、ROADMAP となっている。
  • マーカーをクリックしてでる吹きだしの中に表示される写真リンクをクリックして出てくる写真を、同一画面の中央に表示するJavaScript ソフト lightbox は機能する。 jQuerylightbox2.51 を使った。


2011年11月11日

Jazz: Piano Trio List


 2011年7月に、ジャズ・ジャーナリストの杉田宏樹さんという方の【ジャズと言えばピアノトリオ】いう本が、光文社新書で発刊された。読み進むと、ファミリアな名前のピアニストの名前が次々と出てくる。それらのピアニストが結成したピアノトリオの有名なアルバムも細かに紹介されている。ジャズと聞くと節操無く集めたジャズ曲の中にも、それらのアルバムに収められているナンバーが、mp3 file として Windows Media Library に収納されている。

 これらのナンバーを上の本に紹介されている順に整理して、Internet Radio のサイトである Live 365 に開設している私の放送局Radio Senboku に、アップロードすることにした。
 そのために、この本に紹介されている Piano Trio と代表的なアルバムを整理してみた。Trio であるから、該当アルバムで共演しているベースとドラムスの奏者も合わせて記載して、一覧にしたのが下の表である。

 その後、Radio Senboku にアップロードするために、上の本に紹介されている以外のレコードも使ったので、それらも該当する Trio の欄に追記した。

Jazz Piano Trios
Pianists representative Albumrecordedbassdrums
Revised on Oct 2nd, 2012
Bill Evans
1929 - 1980
Portrait In Jazz 1959 Scott LaFaro Paul Motian
Waltz For Debby 1961
Sunday At The Village Vanguard 1961
How my heart sings! 1962 Charles Israels
At Shelly's Manne-Hole 1963 Larry Bunker
Bud Powell
1924 - 1960
Bud Powell Trio Plays 1947 Curly Russell Max Roach
A Portrait of Thelonious 1961 Pierre Michelot Kenny Clarke
Thelonious Monk
1917 - 1982
Thelonious Monk Trio 1952,54 Gary Mapp
Percy Heath
Art Blakey
Max Roach
Plays Duke Ellington 1955 Oscar Pettiford Connie Kay
The Unique 1956 Art Blakey
Oscar Peterson
1925 - 2007
We Get Requests 1964 Ray Brown Ed Thigpen
The Trio 1961
Girl Talk 1965-67 Ray Brown
Sam Jones
Louis Hayes
Bobby Durham
Wynton Kelly
1931 - 1971
Kelly at Midnite 1960 Paul Chambers Philly Joe Jones
The Best Of Wynton Kelly ----
Sonny Clark
1931 - 1963
Cool Struttin'
  Art Farmer(trp)
  Jackie McLean
1958 Paul Chamberrs Philly Joe Jones
Sonny ClarkTrio 1965
Tommy Flanagan
1930 - 2001
Overseas 1958 Wilbur Little Elvin Jones
Eclypso 1977 George Mraz
Kenny Drew
1928 - 1993
Kenny Drew Trio 1956 Paul Chamberrs Philly Joe Jones
Red Garland
1923 - 1984
Groovy 1956 Paul Chamberrs Art Taylor
At The Plerude 1959 Jimmy Rowser Specs Wright
Barry Harris
1929 -
Breakin' It Up 1958 Bob Cranshaw Clifford Jarvis
At The Jazz Workshop 1960 Sam Jones Louis Hayes
Phineas Newborn, Jr
1931 - 1989
World of piano 1961 Paul Chamberrs
Sam Jones
Philly Joe Jones
Louis Hayes
Here is Phineas 1958 Oscar Pettiford Kenny Clarke
Hank Jones
1918- 2010
Great Jazz Trio: At the Village Vanguard 1978 Ron Carter Tony Williams
Hank Jones Trio 1979 George Duviver Alan Dawson
Al Haig
1924- 1982
Invitation 1974 Rovere Gilbert Kenny Clarke
Al Haig Trio 1954 Bill Crow Lee Abrahams
Duke Jordan
1924- 1982
Flight To Denmark 1973 Mads Vinding Edmund Leonard Thigpen
Ray Bryant
1922- 2006
Ray Bryant Trio [1957] 1957 Ike Isaacs Specs Wright
Ray Bryant Plays 1959 Tommy Bryant Oliver Jackson
Hampton Hawes
1922- 2006
Hampton Hawes The Trio Vol. 1 1955 Red Mitchell Chuck Thompson
Andre Previn
1929 -
My Fair Lady 1964 Leroy Vinnegar Shelly Manne
Horace Parlan
1929 -
Us Three 1960 George Tucker Al Harewood
Duke Pearson
1932 - 1980
Tender Feelin's 1959 Gene Taylor Lex Humphries
Profile 1959
Herbie Nichols
1919 - 1963
Herbie Nichols Trio 1956 Teddy Kotick (tracks 6-8 & 10)
Al McKibbon (tracks 1-4 & 9)
Max Roach
Duke Ellington
1899 - 1974
Money Jungle 1962 Charles Mingus Max Roach
Art Tatum
1909 - 1956
Art Tatum Trio 1956 Red Callender Jo Jones
Ahmad Jamal
1930 -
Portfolio Of Ahmad Jamal 1958 Israel Crosby Vernell Fournier
Ramsey Lewis
1935 -
The In Crowed 1965 Eldee Young Isaac Holt
An hour with the Ramsey Lewis Trio 1959
Erroll Garner
1921 - 1977
Concert By The Sea 1955 Eddie Calhoun Denzil Best
Billy Taylor
1921 - 2010
Sleeping Bee 1969 BenTucker Grady Tate
A Touch Of Taylor 1955 Earl May Percy Brice
Junior Mance
1928 -
JUNIOR 1959 Ray Brown Lex Humphries
Ceder Walton
1928 -
Something For Lester
  as Ray Brown Trio
1977 Ray Brown Elvin Jones
Manhattan Afternoon 2009 David Williams Billy Higgins
Marian McPartland
1918 -
Marian McPartland At The London House 1958 Bill Britto Joe Cusatis
At The Hickory House 1955 Bill Crow Joe Morello
Claude Williamson
1926 -
Round Midnight 1958 Red Mitchell Mel Lewis
Salute to Bud 1954 Curtis Counce Stan Levey
Mal Waldron
1926 - 2002
Free At Last 1966 Isla Eckinger Clarence Becton
Set Me Free 1969 Barre Phillips Philly Joe Jones
Don Friedman
1935 -
Circle Waltz 1962 Chuck Israels Pete(La Roca)Sims
Bobby Timmons
1935 - 1974
This Here Is Bobby Timmons 1960 Sam Jones
(tr 1, 2 & 4-9)
Jimmy Cobb
(tr 1, 2 & 4-9)
Hugh Lawson
1935 - 1997
Prime Time 1977 Bob Cranshaw Ben Riley
Richard Wyands
1928 -
Then, Here And Now 1978 Lisle Atkinson David Lee
Harold Mabern
1936 -
Straight Street (yet) 1991 Ron Carter Jack DeJohnette
Monty Alexander
1944 -
Montreux Alexander  1976 John Clayton Jeff Hamilton
Walter Bishop Jr.
1927 - 1998
Speak Low 1976 JImmy Garrison G.T.Hogan
Walter Davis Jr.
1932 - 1990
Scorpio Rising 1989 Santi Debriano Ralph Peterson Jr.
Paul Bley
1932 -
Touching 1965 Kent Carter Barry Altschuk
Chick Corea
1941 -
Now He Sings, Now He Sobs 1968 Miroslav Vitous Roy Haynes
Herbie Hancock
1940 -
Maiden Voyage (The Rudy Van Gelder Edition) 1965 Ron Carter Tony Williams
Speak Like A Child 1968 Mickey Roker
McCoy Tyner
1938 -
Inception 1962 Art Davis Elvin Jones
Remembering John 1991 Avery Sharpe Aaron Scott
Steve Kuhn
1938 -
Watch What Happens 1968 Palle Danielsson Jon Christensen
Remembering Tomorrow 1968 David Finck Joey Baron
Richie Beirach
1947 -
Elegy For Bill Evans 1981 George Mraz Al Foster
Fred Hersch
1955 -
Heartsongs 1989 Michael Formanek Jeff Hirshfied
Kenny Barron
1943 -
Scratch 1985 Dave Holland Daniel Humair
People Time(Disc1,2) 1991 Sax: Stan Gets   
Benny Green
1963 -
Testifyin! Live At The Village Vanguard 1991 Christian McBride Carl Allen
FUNKY! 1997 Ben Wolfe Karriem Riggins
Cyrus Chestnut
1963 -
Dark Before The Dawn 1995 Steve Kirby Clarence Penn
Bill Charlap
1966 -
written in the stars 2000 Peter Washington Kenny Washington
'S Wonderful 1999
Geri Allen
1957 -
in the year of the dragon 1989 Charlie Haden Paul Motion
The Printmakers 1984 Anthony Cox Andrew Cyrille
Brad Mehldau
1970 -
the Art of the Trio volume one 1998 Larry Grenadier Jordi Rossy
introducing BRAD MEHLDAU 1995 track 1-5
Larry Grenadier
track 6-9
Christian McBride
track 1-5
Jordi Rossy
track 6-9
Brian Blade
Keith Jarrett
1970 -
Somewhere Before 1968 Charlie Haden Paul Motion
Life Between The Exit Sings 1967
Changeless 1987 Gary Peacock Jack Dejohnette

2008年9月21日

隠居のMT備忘録:lightbox 2.0 の背景 overlay が黒くならない

 lightbox 2.0 の最新バージョン 2.04 の導入は失敗した。導入の手順を間違ったものと思うが、サイトそのものにアクセスできないという致命的な障害がでるので、すぐに元のバージョン 2.03 に戻した。

 そのときのドサクサにまぎれてテンプレートなどをいじったせいか、次の条件のときに、画像が現れるポップアップ画面の背景 overlay が黒くならないという現象がでた。
  • Windows XP SP2
  • Internet Explorer 7
  • MovableType 4.1 テンプレート:小粋空間:two-column-liquid-right メインページ
 アーカイブページやWindowsVista Mozilla(Firefox) では起こらない。
 上記は私の環境で、それ以外については確認していない。

 lightbox2.0 のページの support では、overlay については次の説明がある。

The shadow overlay doesn't stretch to cover full browser window.
Remove the default margin and padding from the body tag. Add body{ margin: 0; padding: 0; } to your stylesheet.

 スタイルシートでは、この設定は既に以下のようになっており、問題はなさそうである。
/* すべて */
* {
    margin: 0;
    padding: 0;
    font-family: Verdana, Arial, sans-serif;
    word-break: normal;
    line-break: strict;
}


 ネットサーチもしてみたが、的確な示唆はヒットしなかった。見当はずれであるが、「小粋空間」さんの「Lightbox JS の Movable Type での不具合を修正する」のエントリーに、コメントとして質問を投げかけてみた。親切に以下のような返事をいただいたが、結局原因不明である。
>n_shuheiさん
こんばんは。ご返事遅くなってすいません。
事象は確認できましたが、現在のところ原因不明です。

もし何か分かりましたら別途エントリーしたいと思います。
それではよろしくお願い致します。


 アクセス解析サービスの Artisan の分析では、私のサイトへの訪問者は、WindowsXP IE6/7 でのアクセスが最も多いから、早く修復したいと思ったが方途がない。

 運営している友人の2つのブログのひとつを見ていると、なんと上の条件でも、lightbox で拡大画像表示されるポップアップ画像の背景overlay が黒くなっていることが分かった。いじっているうちに偶然うまくいっていたらしい。

 このブログも同じ小粋空間:two-column-liquid-right のテンプレートを使っているので、lightbox 表示に関連していると思われるテンプレートモジュールの「ヘッダー」を子細に見てみると、正常に表示されるブログのテンプレートの<div> タグを閉じる </div> タグがひとつ少ないことを見つけた。
 どうやら、テンプレートモジュールの「ヘッダー」で<div> タグを閉じる </div> タグを余計にひとつつけたことが原因らしく思われた。テンプレートの構成上テンプレートモジュールの「ヘッダー」の<div> タグのひとつは、テンプレートモジュールの「フッター」で閉じられることになっていたのだ。

 「ヘッダー」の余計な </div> タグを削除すると上手く背景overlay が黒くなった。原因は、まったくそのせいと思っていたが、再現性を確認するために、「ヘッダー」テンプレートに余計な </div> タグをつけても、背景overlay は黒くなる。再現性はないのだ。
 どうやら修復は不可逆性だったようで釈然としないのだが、うまく表示されるようになっているので、まあ、いいか という気分である。
 ブラウザーに依存する障害は、いつもよく分からない。

2008年4月 7日

隠居のお勉強:JavaScript Basic (9) Break and Continue

 JavaScript の勉強が、1週間ほど空いているので再開することにした。

 W3Schools の次のレッスンは、Loop で使う break と continue である。

  • 二つの特殊なコマンド break, continue をloop の中で使うことができる。
    • break コマンドは、loop の途中である条件になれば、その loop を中止する。
    • 例を次に示す。
      <html>
      <body>
      <script type="text/javascript">
      var i=0;
      for (i=0;i<=10;i++)
      {
      if (i==3)
      {
      break;
      }
      document.write("The number is " + i);
      document.write("<br />");
      }
      </script>
      </body>
      </html>

    • 結果は次の通りになる。
      The number is 0
      The number is 1
      The number is 2

    • continue コマンドは、loop の途中である条件になる場合のみloop を実行しないが、loop は続ける。
    • 例を次に示す。
      <html>
      <body>
      <script type="text/javascript">
      var i=0
      for (i=0;i<=10;i++)
      {
      if (i==3)
      {
      continue;
      }
      document.write("The number is " + i);
      document.write("<br />");
      }
      </script>
      </body>
      </html>

    • 結果は次の通りになる。
      The number is 0
      The number is 1
      The number is 2
      The number is 4
      The number is 5
      The number is 6
      The number is 7
      The number is 8
      The number is 9
      The number is 10

 構文は理解できたが、どのような時に使われているのか分からない。

 なお、このようなエントリーを編集するときに、< や > を使う場合には、&lt; &gt; とエンコードしなければならないが、今回から HTML エンコードホームというサービスを使わせてもらうことにした。
 W3Schools などの example コードをこのページのエンコード前ボックスにコピペ(copy & paste)すれば、エンコードされた結果がエンコード後ボックスに表示されるので、これをエントリー編集画面にコピペすればよい。
 今までは、< などを一つずつ&lt; などと書き直していたのでずいぶん楽になった。
 今頃気がつくのは、老齢化現象の一つと思うが。

2008年3月21日

隠居のお勉強:JavaScript Basic (5) switch 構文を使って、本日の曜日を表示する

 前回の学習[JS If...Else] で、JavaScript を自分のブログへいささかの応用ができたので、勇気を得て続けて W3Schools JavaScript Tutorial でのお勉強である。

  • 今回は、条件式 [JS Switch] の学習。
    • 多くの選択肢から、一つの条件式を選んで実行する場合には、switch 構文を使わねばならない。
    • 以下は使用例である。
      <script type="text/javascript">
      //You will receive a different greeting based
      //on what day it is. Note that Sunday=0,
      //Monday=1, Tuesday=2, etc.
      var d=new Date();
      theDay=d.getDay();
      switch (theDay)
      {
      case 5:
        document.write("Finally Friday");
        break;
      case 6:
        document.write("Super Saturday");
        break;
      case 0:
        document.write("Sleepy Sunday");
        break;
      default:
        document.write("I'm looking forward to this weekend!");
      }
      </script>
    • break ステートメンを書くのは次の選択肢が実行されることを阻むためである。

  • これを応用して、自分のブログのタイトル下にある横長カレンダー横に、本日の曜日を表示することを試みた。横長カレンダーでは、曜日が分からない。
    • 上の example を参考に、次のような外部 js ファイルを秀丸で作成した。ファイル名は何でもいいが、TheDay.js として FFTP でブログサーバーにアップした。
      
      //今日は何曜日かを表示する js ファイル
      var d = new Date();
      theDay=d.getDay();
      switch (theDay)
      {
      case 0:
        document.write("<span id='js-text-red'><b>本日:日曜日</b></span>");
        break;
      case 1:
        document.write("<span id='js-text-grey'><b>本日:月曜</b></span>");
        break;
      case 2:
        document.write("<span id='js-text-grey'><b>本日:火曜</b></span>");
        break;
      case 3:
        document.write("<span id='js-text-grey'><b>本日:水曜</b></span>");
      break;
      case 4:
        document.write("<span id='js-text-grey'><b>本日:木曜</b></span>"); 
      break;
      case 5:
        document.write("<span id='js-text-grey'><b>本日:金曜</b></span>"); 
      break;
      case 6:
        document.write("<span id='js-text-blue'><b>本日:土曜</b></span>");
       break;
      }
      

    • スタイルシートに、次のスタイルを追加した。日曜日は、文字色を赤に、土曜日は水色にした。
      /* JS TheDay text */
      #js-text-grey { color: #408080; font-size: 10px; }
      #js-text-red { color: #ff0000; font-size: 10px; }
      #js-text-blue { color: #8888ff; font-size: 10px; }

    • MT テンプレート(メイン・エントリー)の<body> 部のカレンダー表示部分に、次のステートメントを追加した。
      <script src="http://n-shuhei.net/blog/TheDay.js"></script>
 これで、横長カレンダーの横に、本日:金曜日というように、ブログに訪問していただいた日の曜日が表示されるようになった。自作 JavaScript の2作目である。

2008年2月28日

隠居、今頃になってブログの禁則処理方法を発見

 恥ずかしながら、ブログのエントリーなどでかいた英単語が行末で分断されていたり、行頭に「。」がきていたりしてもスペースの関係で仕方ないのだと思いこんでいた。

 Word などのワープロソフトでは、この禁則処理は初期設定で組み込まれている(「ツール」→「オプション」→「文字体裁」)のは知っていたが、Movable Type のようなブログ HTML での禁則処理の方法を知らなかった。
 ほっておくのもぶさいくなので、ネットで「HTML 禁則処理」のような検索語で方法をサーチしてみると、CSS で設定できることが分かった。ブラウザーによっては、自動的に禁則処理をしているようだが、ブラウザーによって異なるらしい。IEではあまりうまく処理されていないらしい。

 早速、自分のサイトの CSS (もともとは、「小粋空間」さんのテンプレートを利用させてもらっている)に、左のような id 属性( word-break line-break )を設定すると禁則処理ができるようになった。word-break は、英単語を行末で分断しないプロパティで、IE のみで有効なようである。詳しくは、HTML クイックリファレンスにでている。値に、keep-all を指定すると全ての言語で単語の途中では改行せず、単語の切れ目で改行されることになっているが、この設定では形が崩れてしまうようだ。
 また、line-break は、行頭・行末の禁則処理で、これも IE に独自なプロパティのようだ。これも詳しくは、HTML クイックリファレンスの line-break のページにでている。この方は、 normal と strict とでは余り変化がないように思える。最近のブラウザーでは、それ自身が禁則処理を行っているようである。

 スタイルシートに設定前と設定後を比較すると、下のような結果になる。CSS を設定した方があきらかに読みやすい。こんなことがすぐ分かるのも、ネットのおかげである。
word-break.jpg

word-break_a.jpg