「mod_deflate 確認」でググったところ1番上にヒットしたのが下記記事。
mod_deflateの動作確認方法3つ | 猫ITソリューションズ - 川越のホームページ・Web制作会社
しかしながら、3つとも使いたくなかった…。
っていうか、使う必要なかったよ!
…でも、参考にはなったからね!
ブラウザに搭載のDevTools(開発ツール/デベロッパーツール/F12ツール)を使うだけでした。
「network(ネットワーク)」タブで調べたいURLを選択
右ペインの「headers(ヘッダー)」タブを選択
「Response Headers(応答ヘッダー)」セクションの「Content-Encoding」の値を確認
この値が「gzip」になっていれば成功!
「Content-Encoding」が見つからなかったら失敗…。
なお、Firefoxの開発ツールだと、ネットワークタブの一覧で「転送量」と「サイズ」が確認できるぞ。
「転送量」が圧縮されて転送されたサイズ、「サイズ」はそれを解凍したサイズ、のようだ。
どれくらいの圧縮がされているかわかって便利だぞ。
フォクすけタソGJ!
Engineering
お題:selectタグ内のoptionをjavascript(jQuery)でランダムに選択する
これについて検索した結果。
なるほどー。…って、なんだこのニョロニョロは?
という訳でこれが本記事のタイトル前半部分。
後半部分の話はこれ。
↓
js ~~ - Google 検索
ダメ元で記号で検索してみたところ…
ちゃんとヒットするではないか!
という訳で、「~~」について詳しく解説されている記事にたどり着くことができました。
↓
【JavaScript】~~ で小数の切り捨て(ビット演算子 ~2つで0方向へ切り捨て) at softelメモ
#自分が「鬱陶しい昔語りのおじさん」になっていく…今となってはあの人達の気持ちがわかる…。
昔は検索語に入れた記号は無視されたんだよ。
意味がわからない記号に遭遇したときは苦労したものさ。
そこで、記号の意味を調べるための記事を作ってみたことがあったなー。
便利になったものだ。
続きを読む
これについて検索した結果。
var $options = $('#sel').find('option'),
random = ~~(Math.random() * $options.length);
$options.eq(random).prop('selected', true);
なるほどー。…って、なんだこのニョロニョロは?
という訳でこれが本記事のタイトル前半部分。
後半部分の話はこれ。
↓
js ~~ - Google 検索
ダメ元で記号で検索してみたところ…
ちゃんとヒットするではないか!
という訳で、「~~」について詳しく解説されている記事にたどり着くことができました。
↓
【JavaScript】~~ で小数の切り捨て(ビット演算子 ~2つで0方向へ切り捨て) at softelメモ
#自分が「鬱陶しい昔語りのおじさん」になっていく…今となってはあの人達の気持ちがわかる…。
昔は検索語に入れた記号は無視されたんだよ。
意味がわからない記号に遭遇したときは苦労したものさ。
そこで、記号の意味を調べるための記事を作ってみたことがあったなー。
便利になったものだ。
続きを読む
iPhoneからスクロールバーが消えてしまってからだいぶ日にちが経ちました。
どうして消したんですかAppleさん。
どうして戻るボタンを頑なに拒むんですか
やっぱりスクロールバーがあったほうが良い場面ってあるんです。
なので、JavascriptやCSSで表示するプラグインが存在します。
そのなかでもSimplebarというプラグインが使いやすそうでした。
使い方については下記記事がとてもわかりやすいです。
スクロールバーのカスタマイズは『Simplebar』を使えばだいたい解決すると思ったので使い方を紹介する試み | Weblasts
さて、これだけなら本記事の存在価値は無い訳です。
これに関連して調べたけど全く見つからなかったことがあったのでこの記事を執筆しております。
それは、掲題の通りですが、水平スクロールバーを上に表示したかったのです。
で、調べたのですが見つからず、今流行りのAIにお伺いを立ててみたわけです。
すると、CSSを書き足すだけで簡単にできそうなことを言ってくるではないですか。
じゃー、ってんで、やってみたわけです。
なんとできたではないかっ!
できてみれば単純で、bottomをキャンセルしてtopを指定するだけ。
すべての水平スクロールバーを上部にするのなら、これだけでOKっす。
まあ、実はAIくんの言う通りそのままでは動かなかったので修正は必要だったけどね。
気付きを与えてくれたというだけでありがたい。
私がAIにコードを依頼するとほぼ100パーセントの確率で正常に動かないコードを提出してくるんですけど、皆さんの場合はちゃんと使えているのかな?
もしかして、私がAIに嫌われているのかも?
どうして消したんですかAppleさん。
やっぱりスクロールバーがあったほうが良い場面ってあるんです。
なので、JavascriptやCSSで表示するプラグインが存在します。
そのなかでもSimplebarというプラグインが使いやすそうでした。
使い方については下記記事がとてもわかりやすいです。
スクロールバーのカスタマイズは『Simplebar』を使えばだいたい解決すると思ったので使い方を紹介する試み | Weblasts
さて、これだけなら本記事の存在価値は無い訳です。
これに関連して調べたけど全く見つからなかったことがあったのでこの記事を執筆しております。
それは、掲題の通りですが、水平スクロールバーを上に表示したかったのです。
で、調べたのですが見つからず、今流行りのAIにお伺いを立ててみたわけです。
すると、CSSを書き足すだけで簡単にできそうなことを言ってくるではないですか。
じゃー、ってんで、やってみたわけです。
なんとできたではないかっ!
できてみれば単純で、bottomをキャンセルしてtopを指定するだけ。
すべての水平スクロールバーを上部にするのなら、これだけでOKっす。
/* 上部にスクロールバーを配置 */
.simplebar-track.simplebar-horizontal {
top: 0; /* 上部に固定 */
bottom: unset; /* 下部からの固定を解除 */
}
まあ、実はAIくんの言う通りそのままでは動かなかったので修正は必要だったけどね。
気付きを与えてくれたというだけでありがたい。
私がAIにコードを依頼するとほぼ100パーセントの確率で正常に動かないコードを提出してくるんですけど、皆さんの場合はちゃんと使えているのかな?
もしかして、私がAIに嫌われているのかも?
HTMLのSELECTタグでできるフォーム部品、つまり
↓これ
の日本語での正式名称って何なのかなー、と思った話です。
昔から、ドロップダウンリストとかプルダウンとかセレクトボックスとか呼んでいて、定まっていなかった。呼ぶたびになんだかモヤッとした気持ちになっていた。
よーし、そろそろここいらで決着をつけようではないかっ!
と、勇んで調べたところ、下記ページに行き当たった。
HTMLタグの正式名称 #HTML - Qiita
わー、すべてのタグの正式名称を調べ上げて下さっている!
すげー、ありがてぇ。と思い、そのまま上から眺めていた。
あ、SELECTタグを調べるんだった!と気づくのに時間がかかったが、まあ良い。これで長年のモヤモヤに決着がつくのだ。このくらいの遠回りは物の数ではないわっ!
さて、SELECTの正式名称は、っと。
SELECT → 和訳の正式名称なし
ふーん、なるほどー。正式名称は「和訳の正式名称なし」っていうんだねー。あースッキリしたー、、、じゃねーよっ!
無いんかーいっ!!!
ここにモヤモヤさらに深マレリ。。。
いやいや、この記事では全般的に調べて下さったので特定のタグは深掘りしなかったということですよね。不肖このワタクシメがSELECTタグにつきましては深掘りいたしましょう。
件の記事に倣って MDN Web Docs を正義とします。
そして下記のような記述が見つかりました。
というわけで、SELECTタグで作られるフォーム部品の日本語正式名称は
選択ボックス
と言って良いのではないでしょうか。
そしてこれはちと盲点だったというか、そこまで考えてなかったというか…その通りだろうと思ったので付け加えさせていただく。正式云々というのとはズレてしまいますが。。
つまり下図のごとし。

「選択ボックスをクリックするとリストがドロップダウンします。」垂れ幕を落とす(※)感じ?
「選択ボックスからリストがプルダウンされます。」トイレットペーパーのように引っ張り出す感じ?
※:怪盗なヒトが気球から「〇〇はいただいた」みたいなメッセージを書いた縦長の垂れ幕をダラッと落とすイメージだったり、何かの結果発表のときビルの屋上から垂れ幕をシュルシュルっと落とすイメージだったんだけど、そういうイメージがググっても出てこなかった。世間一般的ではないのかな…?そもそも「垂れ幕を落とす」という言葉が無いようだ。あーそうそう、「くす玉」を割ったときに出てくるメッセージのイメージです。
↓これ
の日本語での正式名称って何なのかなー、と思った話です。
昔から、ドロップダウンリストとかプルダウンとかセレクトボックスとか呼んでいて、定まっていなかった。呼ぶたびになんだかモヤッとした気持ちになっていた。
よーし、そろそろここいらで決着をつけようではないかっ!
と、勇んで調べたところ、下記ページに行き当たった。
HTMLタグの正式名称 #HTML - Qiita
わー、すべてのタグの正式名称を調べ上げて下さっている!
すげー、ありがてぇ。と思い、そのまま上から眺めていた。
あ、SELECTタグを調べるんだった!と気づくのに時間がかかったが、まあ良い。これで長年のモヤモヤに決着がつくのだ。このくらいの遠回りは物の数ではないわっ!
さて、SELECTの正式名称は、っと。
SELECT → 和訳の正式名称なし
ふーん、なるほどー。正式名称は「和訳の正式名称なし」っていうんだねー。あースッキリしたー、、、じゃねーよっ!
無いんかーいっ!!!
ここにモヤモヤさらに深マレリ。。。
いやいや、この記事では全般的に調べて下さったので特定のタグは深掘りしなかったということですよね。不肖このワタクシメがSELECTタグにつきましては深掘りいたしましょう。
件の記事に倣って MDN Web Docs を正義とします。
そして下記のような記述が見つかりました。
選択ボックス(その他のフォームコントロール - ウェブ開発を学ぶ | MDN) より
単純な選択ボックスは、1 つ以上の <option> 要素を子要素として持つ <select> 要素で作成され、
それぞれが可能な値のうちの 1 つを指定します。
というわけで、SELECTタグで作られるフォーム部品の日本語正式名称は
選択ボックス
と言って良いのではないでしょうか。
そしてこれはちと盲点だったというか、そこまで考えてなかったというか…その通りだろうと思ったので付け加えさせていただく。正式云々というのとはズレてしまいますが。。
私見では、このモノの名前はセレクトボックス、ポイントまたはクリックしてズラズラと出てくる選択肢の一群をプルダウンまたはドロップダウンメニューと言っていいと思います。
つまり下図のごとし。

「選択ボックスをクリックするとリストがドロップダウンします。」垂れ幕を落とす(※)感じ?
「選択ボックスからリストがプルダウンされます。」トイレットペーパーのように引っ張り出す感じ?
※:怪盗なヒトが気球から「〇〇はいただいた」みたいなメッセージを書いた縦長の垂れ幕をダラッと落とすイメージだったり、何かの結果発表のときビルの屋上から垂れ幕をシュルシュルっと落とすイメージだったんだけど、そういうイメージがググっても出てこなかった。世間一般的ではないのかな…?そもそも「垂れ幕を落とす」という言葉が無いようだ。あーそうそう、「くす玉」を割ったときに出てくるメッセージのイメージです。
あくまでもテスト用にPHP内であるURLからファイルをダウンロードしてそのまま出力する、その際SSLの確認を行わない。
っというプログラムを作った。あくまでもテスト用に。大事なことなので二度言いましたよ。
そのやり方は書きません。怒られそうだから(^_^;
その中で、どうせならファイル内容から mime type を自動判別してContent-Type ヘッダを出力しよう。となった。
mime type 取得なら素直に mime_content_type 関数を使うところだが…
てな具合で、ファイルパスを指定しかできない。
さあ困った。とググっていると、
なんと!mime_content_type 関数って使えないのーっ!?(※フツーに使えるみたいです;文末参照)
そうかそれじゃ仕方ない。finfo を使いましょう。
で、見つけちゃったの。
おーこれこれ。引数にファイルを格納した変数を渡せる。
しっかし、この公式マニュアル、関数の説明が
ちゅーわけで、↓こんな感じになりましたとさ。
※mime_content_type 関数の非推奨について
うーん、どうやら mime_content_type 関数は非推奨では無いようです。ってか、ハッキリと現時点では非推奨ではありません。実際に一時期非推奨になったことがあったけどやめた。非推奨になった根拠も不明。別にちゃんと使えるやん。躊躇なく使っていいよ。っということのようだ。
↓参考文献
・「mime_content_typeは非推奨ではない」ということで良いでしょうか?
・PHP :: Doc Bug #71367 :: claim mime_content_type is deprecated
っというプログラムを作った。あくまでもテスト用に。大事なことなので二度言いましたよ。
そのやり方は書きません。怒られそうだから(^_^;
その中で、どうせならファイル内容から mime type を自動判別してContent-Type ヘッダを出力しよう。となった。
mime type 取得なら素直に mime_content_type 関数を使うところだが…
パラメータ
filename 調べるファイルへのパス。
てな具合で、ファイルパスを指定しかできない。
さあ困った。とググっていると、
しかし、2022年現在ではこのファンクションは使いにくいファンクションです。一時期は「非推奨」という扱いになり、廃止が検討されていたり、また現在でも標準では利用できずに「php.ini」という設定ファイルを編集しなければ使えない環境などもあります。
なんと!mime_content_type 関数って使えないのーっ!?(※フツーに使えるみたいです;文末参照)
そうかそれじゃ仕方ない。finfo を使いましょう。
で、見つけちゃったの。
finfo::buffer — 文字列バッファの情報を返す
おーこれこれ。引数にファイルを格納した変数を渡せる。
しっかし、この公式マニュアル、関数の説明が
この関数は、バイナリデータの情報を文字列形式で返すために使用します。の一文だけ。ナンノコッチャわからんやん。。まあ例を見ればわかるけど。
ちゅーわけで、↓こんな感じになりましたとさ。
$cont = file_get_contents($url, false, stream_context_create(ゴニョゴニョ));
$f = new finfo();
$type = $f->buffer($cont);
if ($type) header("Content-Type: {$type}");
echo $cont;
※mime_content_type 関数の非推奨について
うーん、どうやら mime_content_type 関数は非推奨では無いようです。ってか、ハッキリと現時点では非推奨ではありません。実際に一時期非推奨になったことがあったけどやめた。非推奨になった根拠も不明。別にちゃんと使えるやん。躊躇なく使っていいよ。っということのようだ。
↓参考文献
・「mime_content_typeは非推奨ではない」ということで良いでしょうか?
・PHP :: Doc Bug #71367 :: claim mime_content_type is deprecated