首頁 > web前端 > css教學 > 主體

css中內容過長怎麼解決

王林
發布: 2020-03-26 10:00:22
轉載
3444 人瀏覽過

css中內容過長怎麼解決

大家在寫css的時候,一定有過忘記設計裡面存在的臨界的情況。舉個例子來說吧,當內容的長度超過了我們的期望值,我們也無法解釋其中的可能性,頁面的設計很可能會因此而崩掉。我們不能保證css總是會按照我們期望的那樣工作,但至少我們可以用不同類型的內容來測試,以減少這種情況的發生。

具體情況如下:

一個右側/左側有小圖示的按鈕

這是一個手風琴效果的開關按鈕。按鈕右側有一個小圖示用來強調它是可點擊的。然而當按鈕的區域不夠長的時候,按鈕上的文字會蓋住圖示。當我們沒有考慮到較長內容的時候這種情況就可能發生。

我們可以在右側增加足夠的padding值來適應圖示的大小

.button {
  padding-right: 50px;
}
登入後複製

注意我們是如何增加padding值來給圖示創造出一塊安全的顯示區域的,現在我們可以確定按鈕的佈局不會再被破壞了。

(相關教學建議:CSS教學

輸入佔位符

當在我們的論壇使用浮動標註模式的時候,特別是按鈕在右側的這種情況,我們需要充分的測試來避免因為佔位符過長而導致的問題。

一個解決方法是為按鈕新增 position: relative,這會讓按鈕覆寫在佔位符上層。

長名字

在這個設計中,圖片向左浮動,右邊有作者名字的資訊。當右側的訊息長度過長的時候會發生什麼事呢?毫無疑問佈局會崩掉。

這裡的問題是我們只向左浮動了圖片,使得作者的名字移動到貼著它,但是這只會在作者名字長度較短的時候才會表現良好。

為了讓頁面佈局的適應性更強,我們需要為這兩個元素都增加 width。更建議的方式是使用flexbox,更適合這樣的小型組件。

文章內有長連結/單字

有時文章內會包含該一些很長的超連結或單字,當在視窗很寬的時候可能不會造成問題。但是對於一些尺寸較小的設備,諸如手機或平板電腦,這可能會產生煩人的橫向滾動條。

對於這個問題我們有兩個解決方案:

(1)使用CSS word-break

.article-body p {
  word-break: break-all;
}
登入後複製

word-break屬性在不同的瀏覽器內表現不太一樣,因此在使用的時候需要充分測試。

(2)為外層元素添加overflow和 text-overflow

.article-body p {
  overflow: hidden;
  text-overflow: ellipsis;
}
登入後複製

這個方案對於過長的連結比較友好,對於長單詞,我推薦使用 word-break。

過長的文章標籤

當我們放置一個文章標籤在卡片上,我們最好只透過設定它的padding來確定它的大小。當標籤的內容過長的時候,寫死高度和寬度可能會造成佈局崩掉。

也可以為標籤設定一個最小的寬度,當對padding包裹的標籤內容元素使用min-width屬性時,寬度是動態變化的,問題就解決了。

有固定連結的段落頭

這個例子是在段落標題的右側有一個『view more』連結。有幾種不同的方式來編寫CSS,其中一種是對連結使用絕對定位。

當標題過長的時候可能會造成一些問題,一個更好的解決方案是使用flexbox佈局,這樣的話當沒有足夠空間的時候會自動將鏈接擠到下一行去。

.header-2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
登入後複製

上面這個技巧被稱呼為'對齊移動包裹'。

推薦影片教學:css影片教學

#

以上是css中內容過長怎麼解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
css
來源:jb51.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!