Ini kodnya:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <ol class="meaning"> <li class="meaning-item">这是一个示例句子,其中长单词应该被连字符分隔 <ul class="sentences"> <li class="sentence">这是一个示例句子,其中长单词应该被连字符分隔</li> <li class="translation">这是一个示例句子,其中长单词应该被连字符分隔</li> </ul> </li> </ol> </body> </html> .meaning { list-style-type: none; counter-reset: item; font-size: calc(0.7em + 2.5vw); word-break: break-all; hyphens: auto; } .meaning > li { position: relative; } .meaning > li::before { content: counter(item); counter-increment: item; position: absolute; top: 0; text-align: center; margin-left: calc(-0.7em - 2.5vw); } .sentences { list-style-type: none; padding-left: 0; }
Perkataan itu dibalut seperti yang saya mahukan, tetapi tanda sempang itu sendiri ("-") tidak muncul di mana perkataan itu dibungkus.
Selain itu, saya mahu secara eksplisit memberitahu penyemak imbas 中的文本是英语(en),
bahawa teks di dalamnya adalah dalam bahasa Jerman (de). Saya tahu tidak semua penyemak imbas mempunyai arahan terbina dalam khusus bahasa untuk tanda sempang, tetapi saya ingin mencubanya.
Saya juga menyimpan kod ini dalam JS Bin.
Terima kasih!
1.) Jangan gunakan
word-break: break-all;
- ia akan memecahkan perkataan di mana-mana, tanpa mengira peraturan sempang.2.) Gabungkan dengan
html
标签中使用lang
属性和hyphens: auto;
untuk membolehkan tanda sempang automatik.3.) Anda boleh menggunakan berbeza
lang
属性 - 请看下面我如何将lang="de"
应用于最后一个li
elemen dalam mana-mana elemen yang mengandungi bahasa lain.