เมื่อใช้แท็ก <details>
ฉันต้องการแสดงสามเหลี่ยมพลิกทางด้านขวาขององค์ประกอบ <summary>
ดังนั้นแทนที่จะเป็นค่าเริ่มต้น:
▶ My Cool List
(จัดชิดซ้าย)
ฉันต้องการทำสิ่งนี้:
My Cool list ▶
(จัดชิดขวา)
และนี่คือการทำงานใน Chrome:
คำถามนี้ช่วยให้ฉันเขียน CSS ซึ่งได้ผล บน Chrome และ Firefox:
// Right-align all summaries.
details > summary {
list-style: none; // Remove the default arrow.
display: flex;
align-items: center; // Vertically center the arrow.
}
details > summary::-webkit-details-marker {
display: none;
}
details > summary::after {
content: '▶';
}
details[open] > summary::after {
content: "▼";
}
อย่างไรก็ตาม บน Safari (ทดสอบ Mojave บนเดสก์ท็อป + iOS14 + iOS12) สามเหลี่ยมฟลิปปีจะถูกผลักไปที่บรรทัดใหม่:
My Cool List
▶
ในซาฟารี:
แล้วฉันจะทำให้ Safari แสดงสามเหลี่ยมพลิกในบรรทัดเดียวกันเช่น Firefox + Chrome ได้อย่างไร ดูเหมือนว่าปัญหานี้มีสาเหตุมาจากการใช้ display: flex
กับองค์ประกอบหลอก ::after
ร่วมกัน แต่ฉันไม่ค่อยมีความรู้เกี่ยวกับการพัฒนาส่วนหน้ามากนัก ดังนั้นฉันจึงไม่รู้จะแก้ไขปัญหานี้อย่างไร