No.3687
ショートケーキ食べたい! ないけど。(´・ω・`)
🍰Re:3683◆スキンが増えてくれるのはたいへん嬉しいです。(╹◡╹) ハンバーガーのダウンロードリンクが切れているっぽいですね
🍰Re:3684◆今のところ、「内側スキン管轄の文字列」を「外側スキン管轄の位置」に持ってくる方法がないので、公式の記法では無理なのですが、もしOGPを出力される設定にしているなら、以下のJavaScriptを書くことで、og:titleの中身をtitleに変えることはできます。
<script>
let ogtitle = document.querySelector('meta[property="og:title"]').getAttribute("content");
document.title = ogtitle;
</script>
上記のスクリプトを、body要素内のどこか(どこでも)か、head要素内で「title要素や[[OGP]]の記述よりも後」の位置に書けば、og:titleとして出力されている文字列が、そのままページタイトルとしても使われます。
og:titleとして何を取得するかは、管理画面の[設定]→[補助出力]→【OGP+Twitter Cardの出力】→[▼OGPの設定]→「og:title」で選択できます。
なお、OGPを出力しない設定にしたい場合や、og:titleで設定できる選択肢よりももっと細かく出力内容を決めたい場合には、以前にNo.3293さんが解説して下さった方法( https://10prs.com/view/57 )を使うのが良いと思います。(そちらの方が出力内容が柔軟で、処理される状況が限定されていて無駄がないので望ましそうです。単純に記述量を短くしたければ先のソースだと2行で済むので楽ではありますが。^^;)
🍰Re:3685◆てがろぐ側では文字コードの変換をしていない上に、CSSファイルの中身には一切触れていないので、文字化けするなら概ねブラウザ側の問題だと思います。で、No.3686さんご指摘のように contentプロパティの値に多言語文字を使う場合には、Unicodeのコードポイントを16進数で指定する必要があるようですね。私もいま初めて知ったんですが。before疑似要素で「カテゴリ」と書きたい場合は、
content: '\30AB\30C6\30B4\30EA';
のように書くとうまくいきます。No.3686さんがご紹介下さっているサイトの変換ツールを使うと良いです。
なお、MDNの解説には、
🍰Re:3686◆解説ありがとうございます!(╹◡╹)ノ
🍰Re:3683◆スキンが増えてくれるのはたいへん嬉しいです。(╹◡╹) ハンバーガーのダウンロードリンクが切れているっぽいですね
🍰Re:3684◆今のところ、「内側スキン管轄の文字列」を「外側スキン管轄の位置」に持ってくる方法がないので、公式の記法では無理なのですが、もしOGPを出力される設定にしているなら、以下のJavaScriptを書くことで、og:titleの中身をtitleに変えることはできます。
<script>
let ogtitle = document.querySelector('meta[property="og:title"]').getAttribute("content");
document.title = ogtitle;
</script>
上記のスクリプトを、body要素内のどこか(どこでも)か、head要素内で「title要素や[[OGP]]の記述よりも後」の位置に書けば、og:titleとして出力されている文字列が、そのままページタイトルとしても使われます。
og:titleとして何を取得するかは、管理画面の[設定]→[補助出力]→【OGP+Twitter Cardの出力】→[▼OGPの設定]→「og:title」で選択できます。
なお、OGPを出力しない設定にしたい場合や、og:titleで設定できる選択肢よりももっと細かく出力内容を決めたい場合には、以前にNo.3293さんが解説して下さった方法( https://10prs.com/view/57 )を使うのが良いと思います。(そちらの方が出力内容が柔軟で、処理される状況が限定されていて無駄がないので望ましそうです。単純に記述量を短くしたければ先のソースだと2行で済むので楽ではありますが。^^;)
🍰Re:3685◆てがろぐ側では文字コードの変換をしていない上に、CSSファイルの中身には一切触れていないので、文字化けするなら概ねブラウザ側の問題だと思います。で、No.3686さんご指摘のように contentプロパティの値に多言語文字を使う場合には、Unicodeのコードポイントを16進数で指定する必要があるようですね。私もいま初めて知ったんですが。before疑似要素で「カテゴリ」と書きたい場合は、
content: '\30AB\30C6\30B4\30EA';
のように書くとうまくいきます。No.3686さんがご紹介下さっているサイトの変換ツールを使うと良いです。
なお、MDNの解説には、
ラテン文字以外は Unicode エスケープシーケンスを使用してエンコードする必要があります。と書いてあるんですが、Unicodeエスケープシーケンスというのは \u +16進数 で表記する方法なので、微妙に違いますね。^^; その方法だとうまくいきませんでした。(^_^;;; せっかく(世界中の文字をそのまま表せる)UTF-8を使っているにもかかわらず「エスケープせよ」と言う仕様にするのは思想的におかしい気がしますので、そのうち改善されるのではないかとは思いますが。
この文字化けが発生している際はcssファイル内の他の日本語文字列(たとえばフォント指定など)も同様に文字化けしています。ということは、ブラウザがCSSファイルの文字コードの認識に失敗している、ということですから、CSSファイルの文字コードを明示できれば良いのかもしれませんけども。
- CSSファイルの1行目に @charset "utf-8"; と書いておいたり、
- CSSファイルの先頭付近に /* これは○○のスタイルシートで云々 */ みたいな日本語のかな漢字交じり文を書いておくなどして、
🍰Re:3686◆解説ありがとうございます!(╹◡╹)ノ
- ユーザ「にしし」の投稿だけを見る (※時系列順で見る)
- この投稿と同じカテゴリに属する投稿:
- この投稿日時に関連する投稿:
- この投稿に隣接する前後3件ずつをまとめて見る
- この投稿を再編集または削除する