Có thể tách câu thành một từ trên mỗi dòng bằng CSS không?Câu riêng biệt cho một từ trên mỗi dòng
Input:
<div>Hello world foo bar</div>
rendered đầu ra:
Hello
world
foo
bar
Setting chiều rộng để ví dụ 1px
không được mong muốn.
Có thể tách câu thành một từ trên mỗi dòng bằng CSS không?Câu riêng biệt cho một từ trên mỗi dòng
Input:
<div>Hello world foo bar</div>
rendered đầu ra:
Hello
world
foo
bar
Setting chiều rộng để ví dụ 1px
không được mong muốn.
Bạn phải sử dụng display:table-caption;
để đạt được điều này.
Đây là giải pháp.
HTML:
<div>Hello world foo bar</div>
CSS:
div{display:table-caption;}
Hope this helps.
Bạn có thể thiết lập độ rộng của div để 1px, điều này sẽ đặt mỗi từ trên một dòng mới
div {
width:1px;
}
Điều này không thể chấp nhận được, xin lỗi. – hsz
Có lẽ bạn nên đưa ra một số yêu cầu sau đó, bạn đặt câu hỏi là không thực sự cụ thể, chúng ta có thể thêm thêm html? Nhắm mục tiêu các từ riêng biệt là không thể trong CSS – koningdavid
Có một reuirement: CSS mà không có '1px' - tất cả mọi thứ trong câu hỏi. – hsz
Câu trả lời của Nathan sử dụng table-caption
gần như chính xác nhưng bỏ sót một vấn đề chính trong câu đó chỉ thực sự chia cho từ dài nhất dẫn đến nhóm các từ ngắn hơn.
Ví dụ câu sau:
lừa này nhóm và chia tách các từ trong câu dựa vào từ dài nhất.
thực sự dẫn đến kết quả sau. Lưu ý nhóm trên in a
và on the
ở đầu ra.
This
trick
groups
and
splits
words
in a
sentence
based
on the
longest
word.
Bạn thực sự có thể làm điều đó rất dễ dàng bằng cách thiết lập word-spacing
trong đó có excellent support.
Sử dụng mà bạn có thể xuất bản án một cách chính xác như sau:
This
trick
groups
and
splits
words
in
a
sentence
based
on
the
longest
word.
Dưới đây là một ví dụ mã làm việc bạn có thể chạy.
Snippet
p {
word-spacing: 9999rem;
}
p ~ p {
/* Undo last assignment */
word-spacing: unset;
display: table-caption;
}
<h3>word-spacing</h3>
<p>
This trick splits each word in a sentence
</p>
<hr/>
<h3>table-caption</h3>
<p>
This trick groups and splits words in a sentence based on the longest word.
</p>
+1 Đối với những nỗ lực của bạn để cải thiện hơn nữa câu trả lời. Câu trả lời của tôi dựa trên kịch bản của OP. Bạn đã cung cấp một giải pháp thay thế "bit" khác với những gì tôi đã trả lời trong câu hỏi của OP. – Nitesh
Cảm ơn! Tôi tình cờ gặp được giải pháp của tôi sau khi thử nghiệm với bạn. –
chỉ tự hỏi, có chuyện gì với width: 0 hoặc 1px - tại sao bạn không muốn điều đó? – Danield
Do các kiểu đính kèm khác vào văn bản - ví dụ như nền. – hsz