指定兄弟要素(h1~h5タグ何れか)のmarginを取得して、指定要素に適用させたい

CSS

前提

 状態:-  閲覧数:2,545  投稿日:2016-11-11  更新日:2016-11-11
下記タグがあります。
・各hタグには予め左marginを設定しています
<h1></h1>
 <h2></h2>
  <h3></h3>
   <h4></h4>
    <h5></h5>
HTML内容として、「・<a href=""></a>」もしくは「<li></li>」を動的に追加していきます
<h1></h1>
  <h2></h2>
・<a href=""></a>
・<a href=""></a>
   <h3></h3>
    <h4></h4>
・<a href=""></a>
     <h5></h5>
・<a href=""></a>
・<a href=""></a>
・<a href=""></a>
<h1></h1>
  <h2></h2>
<li></li>
<li></li>
   <h3></h3>
    <h4></h4>
<li></li>
     <h5></h5>
<li></li>
<li></li>
<li></li>


Q


この時、「・<a href=""></a>」もしくは「<li></li>」の左marginを、兄弟要素(h1l~h5タグ何れか)の左marginを取得して、適用するにはどうすれば良いでしょうか?

最終的にやりたいこと
<h1></h1>
  <h2></h2>
  ・<a href=""></a>
  ・<a href=""></a>
   <h3></h3>
    <h4></h4>
    ・<a href=""></a>
     <h5></h5>
     ・<a href=""></a>
     ・<a href=""></a>
     ・<a href=""></a>


前提及びQの問題点

 閲覧数:875 投稿日:2016-11-11 更新日:2016-11-11
「・」がタグより前に配置されている
ulタグ未考慮

A.案1.一般兄弟セレクタ

 閲覧数:893 投稿日:2016-11-11 更新日:2016-11-11
<style>
h1{
 font-size:300%;
 line-height:1.5;
 }
h2{
font-size:200%;
 line-height:1.5;
 margin-left:1em;
 }
h3{
font-size:150%;
 line-height:1.5;
 margin-left:2em;
 }
h4{
font-size:120%;
 line-height:1.5;
 margin-left:3em;
 }
h5{
font-size:110%;
 line-height:1.5;
 margin-left:4em;
 }
h1 ~ a {
 margin-left:1em;
}
h2 ~ a {
 margin-left:2em;
}
h3 ~ a {
 margin-left:3em;
}
h4 ~ a {
 margin-left:4em;
}
h5 ~ a {
 margin-left:5em;
}
h1 ~ div {
 margin-left:1em;
}
h2 ~ div {
 margin-left:2em;
}
h3 ~ div {
 margin-left:3em;
}
h4 ~ div {
 margin-left:4em;
}
h5 ~ div {
 margin-left:5em;
}
</style>

・一般兄弟セレクタ

正規表現置換対応

 閲覧数:830 投稿日:2016-11-12 更新日:2016-11-12

内容


置換前
・<a href="任意の文字列">任意の内容</a>

置換後
<a href="任意の文字列">・任意の内容</a>


コード


置換前
・<a
置換後
<a

置換前
(<a href=".*?">)
置換後
\1・


・秀丸で正規表現



CSS仕様書

上下中央揃え。要素の「幅」や「高さ」指定不要 / div { height: 100%; display: flex; justify-content: center; align-items: center; }



類似度ページランキング
順位 ページタイトル抜粋 %
1 指定兄弟要素(h1~h5タグ何れか)のmarginを取得して、指定要素に適用させたい 88
2 インライン要素のまま、上下marginを適用させる 45
3 要素。width と height 属性を指定しなかった場合、(内容のいかんに関わらず)幅 300 ピクセル、高さ 150 ピクセルで表示される 37
4 ページで使用されている「id名」「class名」をChromeで取得したい   37
5 resizeが効かない場合は、min-heightを設定してみる 35
6 navタグで定義している部分だけCSSが効かない【html5】 33
7 hrタグにはwidth指定可能。点線にして左端に寄せる 32
8 レイアウトがどうしても崩れるときは、div marginへマイナス値が設定されていないか、確かめる 31
9 height:100%;の効果を打ち消す(あるいは上書きする)には、height:auto!important; 31
10 「position:absolute;」指定する際は、必ず(親要素を含む)祖先要素の何れかで「position」を明示的に指定 30
11 CSSで直前の要素を取得するセレクタはない。ので、直後の要素を取得してマイナス設定値を指定しました。 30
12 font-familyには游ゴシックを指定しない 30
13 一つの要素に対して「id 属性値」を複数指定することは出来ない 30
14 img srcタグで、画像の上に文字 30
15 「Webページへのリンク」をクリックした際、Chrome起動オプションを適用させるには、レジストリを書き換えるしかない 30
16 「position:fixed;」指定した要素を中央寄せするためには、「left:50%;transform:translateX(-50%);」を追記します。 30
17 HTML5では、inputタグの閉じタグを付与しない 29
18 HTMLで「1つのタグにidを複数指定」は出来ない! 29
19 SVG線を徐々に描画していくためには、@keyframes を利用 29
20 「z-index」が効かない時は「-1」を指定してみる 29
2026/10/28 4:58 更新
週間人気ページランキング / 10-20 → 10-26
順位 ページタイトル抜粋 アクセス数
1 Design 0 14
2 鉄道会社毎のカラーコード | カラーコード(色) 6
3 「東京都」のカラーコード取得は難しい | カラーコード(色) 4
3 カラーコード / 色コード | カラーコード(色) 4
4 「bgcolor」「background-color」「background」の違い | CSS 3
5 RGBの種類 / ビットカラー | RGB(色) 2
5 「レイアウト崩れ」がどうしても解決しない → Chrome「デベロッパーツール」で怪しいと思った要素を、正常表示されるまで削除し続けていく | CSSトラブル対応(CSS) 2
5 Flickrがサポートするライセンス 9 + 特別なライセンス 2 | 画像著作権(画像) 2
5 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 2
5 HSLとHSVの違い | 色変換(色) 2
5 縦横比が16:9となる整数値の組み合わせ 2
5 「Midjourney」を使用してみた感想。2022 年 8 月 2 時点では、画像生成能力自体は素晴らしいと思いますが、UIが致命的に分かりづらかったです。 | AI画像生成 2
5 Chromeブックマーク ショートカット | Chromeブックマーク(ブラウザ) 2
6 従来 / 思いのほか難しい / 2011年8月4日時点でお気に入りの画像補正操作方法 1
6 RGBの種類 / sRGB / AdobeRGB | RGB(色) 1
6 血の色 / #b30000 / #360800 / #ff0000 | カラーコード(色) 1
6 「Data URI scheme」画像拡張子は、正しいとは限らない | Data URI scheme(HTML) 1
6 Googleがハイフンって言ってるからハイフンって、そんな安直な考えで本当に良いの? CSS 「id」「class」名 に関する調査履歴 2 | 命名規則(コーディングルール) 1
6 タブ切り替え候補 | タブ切り替え(UI) 1
6 フェイスアイコンメーカー / オリジナル顔アイコン / 江崎グリコ株式会社 1
2026/10/27 5:05 更新