github wikiページで「ネタバレ」テキストを作成するにはどうすればよいですか?


82

マウスオーバーするまで表示されないテキスト、または「表示」/「非表示」ボタンなどがあるテキストを作成して、ユーザーが何らかの方法で操作するまで表示されないようにしようとしています。

githubwikiページでこれを実行しようとしています。(具体的には、短い自己クイズ用です。)

基本的に、SOが>!マークアップで達成するのと同様の効果を得たいと思います。

ホーホー!ネタバレテキスト!

これらの メタ投稿で説明されているように。

同じマークアップはgithubでは機能しません。SO拡張機能だと思いますか?

閉じられたgithubのコメントでネタバレテキストを使用することについてこの問題を見ましたが、wikiページに対する別の答え、またはHTMLなどに基づく別の解決策があるのではないかと思いました。

これを行う方法があるかどうか、またはそれが間違いなく残念ながら不可能かどうかを誰かが知っていますか?


注:ここのgithub isusesページでこれを行うための代替アプローチを示すいくつかの非常に有用なコメントがありました:github.com/github/markup/issues/411#issuecomment-176907678
Chris Beck

回答:


29

GitHub Flavoured Markdownドキュメントにはスポイラーについての記載がないため、サポートされていないようです。それは間違いなく元のMarkdown仕様の一部ではありません。


ええ...私はこのページを見ていました。そこでは、サポートされているさまざまなマークアップ形式がすべてリストされています。(wikiページエディタでもサポートされているようです。)それぞれのドキュメントを簡単に調べました。よくわからなかったのは「最初」で、他のドキュメントはあまり有望に見えませんでしたが、何かを見逃した可能性があります。 ..atm私はあなたが正しいと思う傾向があります。github.com/github/markup最善のオプションは、wikiなどによってリンクされている「githubpages」ページでそれを行うことかもしれません。
クリスベック

144

GFMはHTMLのサブセットをサポートします。今のところ、質問<summary>と回答をのような標準のHTMLタグ<p>でラップし、全体をタグでラップすることができます<details>

だからあなたがこれをするなら

<details> 
  <summary>Q1: What is the best Language in the World? </summary>
   A1: JavaScript 
</details>

これを取得します-> https://github.com/gaurav21r/Spoon-Knife/wiki/Read-More-Test

ブラウザのサポートが問題です。

GitHUB wikiの特徴は、AsciiDocRSTなどの他の形式でテキストを記述できることです。おそらくそれらにも解決策があります。これらは、Markdownよりもはるかに機能が豊富な2つの形式です。


74

上の建物のGauravの答え、このGHの問題は、ここで内部の高度な書式設定を使用する方法です<details>タグGitHubの上

注:2016年からの元の回答が必要です<p>。2017年以降、その要件は後</summary>(つまり、拡張されたコンテンツの前)の空の行です。2019年までのどこかで、マークダウンイン<summary>も機能しなくなりました。これはハック/回避策であり、サポートされている機能/ユースケースではないため、かなり不安定であることがわかります。また、issue / PRコメントはWikiとは異なるフォーマットをサポートしていることに注意してください(たとえば、2020年4月の下線は、要約ではWikiでのみ機能し、問題では機能しません)。

<details>
  <summary>stuff with *mark* **down** in `summary` doesn't work any more, use HTML <i>italics</i> and <b>bold</b> instead in <code>&lt;summary&gt;</code> (<i>click to expand</i>)</summary>
  <!-- have to be followed by an empty line! -->

## *formatted* **heading** with [a](link)
```java
code block
```

  <details>
    <summary><u>nested</u> <b>stuff</b> (<i>click to expand</i>)</summary>
    <!-- have to be followed by an empty line! -->

A bit more than normal indentation is necessary to get the nesting correct,
 1. list
 1. with
    1. nested
    1. items
        ```java
        // including code
        ```
    1. blocks
 1. and continued non-nested

  </details>
</details>

現在、次のようにレンダリングされ、予想されるパーツは拡張可能で折りたたみ可能です。


初期状態

ここに画像の説明を入力してください


概要をクリックします

ここに画像の説明を入力してください


ネストされた要約をクリックします

ここに画像の説明を入力してください


8
パーこのGitHubのコメント、間の線があることを確認してください<p>```。そうしないと、この手法は機能しません。
ベンジャミン

この後に改行を取得する方法はありますか?このテクニックを試してみると、次の段落に詰まっています。(<BR/>タグを追加することなく、私が意味する)
Apollysはモニカサポート

正確な回答コードをコピーして貼り付けると、フォーマットがまったく表示されません。だからここで何かがおかしい
phil2 9420

1
@ phil294アラートをありがとう、修正。悲しいことに、これは腐敗するため、GitHubの進化に合わせて調整が必要です。これを指摘するために、メモも追加しました。
TWiStErRob


4

編集CSSがオプションである場合は、単に使用できます

[](#spoiler "Spoiler Filled Text")

次に、(純粋な)CSSを使用して正しい外観を与えます。

a[href="#spoiler"] {
  text-decoration: none !important;
  cursor: default;
  margin-bottom: 10px;
  padding: 10px;
  background-color: #FFF8DC;
  border-left: 2px solid #ffeb8e;
  display: inline-block;
}
a[href="#spoiler"]::after {
  content: attr(title);
  color: #FFF8DC;
  padding: 0 0.5em;
}
a[href="#spoiler"]:hover::after,
a[href="#spoiler"]:active::after {
  cursor: auto;
  color: black;
  transition: color .5s ease-in-out;
}
<p>
  <a href="#spoiler" title="Spoiler Filled Text"></a>
</p>

このコードから漠然とインスピレーションを得ています


1

詳細/要約タグとは異なる解決策ですが、ネイティブhtmlを使用することも、タイトル付きのスパンを使用することです。私は最近、組織モードでこのようなことをしていました。

生のテキスト

結果

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.