fix: spoiler display when used as a block
This commit is contained in:
parent
9e0afdad03
commit
65fb7cf638
1 changed files with 11 additions and 3 deletions
|
@ -1,9 +1,17 @@
|
||||||
---
|
---
|
||||||
const { tip = '' } = Astro.props
|
const { tip = '' } = Astro.props
|
||||||
|
let divNeeded = false
|
||||||
|
const content = await Astro.slots.render('default')
|
||||||
|
if (content.includes('<p>')) {
|
||||||
|
divNeeded = true
|
||||||
|
}
|
||||||
|
|
||||||
---
|
---
|
||||||
<span class="spoiler" title={tip}>
|
{divNeeded ?
|
||||||
<slot/>
|
<div class="spoiler" title={tip} set:html={content}></div>
|
||||||
</span>
|
:
|
||||||
|
<span class="spoiler" title={tip} set:html={content}></span>
|
||||||
|
}
|
||||||
<style>
|
<style>
|
||||||
:global(.spoiler p) {
|
:global(.spoiler p) {
|
||||||
background-color: #252525;
|
background-color: #252525;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue