引用のスタイルシート指定方法誰か教えてNo.10921
秀まるお2 さん 23/02/06 13:25
 
 秀丸メールのHTMLメール編集アドインにて、HTML形式で返信する時の、返信元メー
ルの引用に、今現在、特定スタイルシートを使ったblockquoteタグを使ってます。

<BLOCKQUOTE style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000
 2px solid; PADDING-RIGHT: 0px; MARGIN-RIGHT: 0px" dir=ltr>

 みたいな指定をしています。これを、普通の引用記号の「>」が行頭に出てくるよ
うに出来ないかって問い合わせが届きました。

 たぶんスタイルシートで何か指定すれば出来るんじゃないかと思うんですが、やり
方分からず。

 誰か知ってたら教えて欲しいです。

[ ]
RE:10921 引用のスタイルシート指定方法誰No.10924
h-tom さん 23/02/06 18:09
 
h-tom です。

> たぶんスタイルシートで何か指定すれば出来るんじゃないかと思うんですが、や
>り方分からず。
行頭というより要素(BLOCKQUOTE)の先頭に文字を追加するのは、疑似要素の::before
を使えば可能ですよ。

blockquote::before {content: ">"}

BLOCKQUOTE 内にあるpre要素内の行頭全部に追加するのは、CSSだけでは無理なのでh
tml側も対応が必要しょう。

[ ]
RE:10924 引用のスタイルシート指定方法誰No.10925
秀まるお2 さん 23/02/06 18:31
 
 情報ありがとうございます。

 僕なりにいろいろ調べてみてたぶん無理そうってことで、ユーザーさんには先ほど
「無理そうです」ってお返事してしまった所ではありました。

 連絡いただいた情報を元にテストしてたら、それなりにうまく出来そうな予感はあ
ります。

blockquote:before {content: ">"}

 で

    <blockquote>
        <div>あああ</div>
        <div>いいい</div>
        <div>ううう</div>
    </blockquote>

 をやってみたら、先頭の「あああ」の前にしか引用記号が付かずで、さらにテスト
したら、

div:before {content: ">"}

 のようにすれば各行に引用記号が付くことが分かりました。これは使えると思いつ
つも、引用じゃない所にも引用記号が付いてしまうので、それは良くないです。そう
すると、たぶんですが、

    <style>
     .q:before { content: ">" }
    </style>

    <div>普通の本文あああ</div>
    <div>普通の本文いいい</div>
    <div>普通の本文ううう</div>
    <blockquote>
        <div class="q">あああ</div>
        <div class="q">いいい</div>
        <div class="q">ううう</div>
    </blockquote>

 みたいにblockquoteの中のdivだけ別スタイルシート指定にすればいいかと思うん
ですが、これはこれで秀丸メールの$(RootHtml)の方でそんな変換をするのはちょっ
と大変すぎます。

 さらには、そもそも的にRootHtmlの中でもいろいろスタイルシート指定してあった
ら、それを勝手に上書きしてしまったらおかしくなってしまいます。そんな書き換え
を僕の方でやるのは無理があります。

 ってことでやっぱり難しいってことで、あきらめようと思います。

[ ]
RE:10925 引用のスタイルシート指定方法誰No.10926
さん 23/02/06 18:52
 
 こんにちは。

<blockquote>
<div>あああ</div>
<div>いいい</div>
<div>ううう</div>
</blockquote>

みたいなHTMLさえ作ってしまえば、こんな感じのスタイルシートで行頭に「>」を入
れれるかと思います。

<style>
blockquote div:before { content: ">" }
</style>

 「blockquote div」は、要するに「blockquote」の中の「div」要素にスタイルを
当てるっていうことになります。
 これを使えば、各 div に特別なクラス名とかをつけなくても動くかと思います。

 以上、参考になれば幸いです。

 それでは。

[ ]
RE:10926 引用のスタイルシート指定方法誰No.10927
Iranoan さん 23/02/06 21:26
 
秀丸おさんこんにちは、Iranoan です
>     <blockquote>
>         <div>あああ</div>
>         <div>いいい</div>
>         <div>ううう</div>
>     </blockquote>
の様に
* blockquote 要素に子要素が有る
* 全てインラインで有る必要はなく style 要素を使っても良い
が前提なら、陸さんが書かれているように
> <style>
> blockquote div:before { content: ">" }
> </style>
とすればよいです

div 要素の限定しないなら、
blockquote *:before { content: ">" }
に、また孫要素には追加で付けないなら、
blockquote > *:before {
にすれば良いでしょう
こちらは同一行ではなく、上の行になってしまうので希望に沿わないかもしれませんが

[ ]
RE:10927 引用のスタイルシート指定方法誰No.10928
秀まるお2 さん 23/02/07 09:07
 
 陸さん、Iranoanさん、情報ありがとうございます。そのようなやり方まであると
は知りませんでした。

 ただ、そのスタイルシートは肝心のHTMLメール編集アドインのIEエンジンではうま
く解釈してくれないようで、引用記号は付いてくれませんでした。Firefoxだとうま
く出ますけども。

 ってことでせっかくやり方を教えていただいた所ですが、やっぱり無理ってことに
させていただきます。

[ ]
RE:10928 引用のスタイルシート指定方法誰No.10930
Iranoan さん 23/02/07 12:53
 
秀まるおさんこんにちは Iranoan です
>  ただ、そのスタイルシートは肝心のHTMLメール編集アドインのIEエンジンではう
>まく解釈してくれないようで、引用記号は付いてくれませんでした。Firefoxだとう
>まく出ますけども。
実機がないので確認できていませんが、末尾の様に overflow を明示するとどうでし
ょう?
IE は overflow のデフォルトが他と違うそうです
blockquote *:before {
  content: ">";
  overflow: visible;
}

[ ]
RE:10930 引用のスタイルシート指定方法誰No.10931
秀まるお2 さん 23/02/07 14:06
 
 テストしてみましたが、引用記号が全然出てこないようでした。たぶん「blockquo
te *」みたいな指定が無視されてるんだろうと思います。

例:

<HTML><HEAD>
<STYLE>
<!--
body{font-size:11pt;font-family:'MS Pゴシック','sans-serif'}
pre{font-size:11pt;font-family:'MS Pゴシック','sans-serif'}
-->
</STYLE>

<STYLE>
<!--
blockquote *:before {
  content: ">";
  overflow: visible;
}
-->
</STYLE>

<META name=GENERATOR content="MSHTML 11.00.10570.1001"></HEAD>
<BODY>
<BLOCKQUOTE>
<DIV>あああ</DIV>
<DIV>いいい</DIV>
<DIV>ううう</DIV></BLOCKQUOTE></BODY></HTML>

[ ]