如何解決div樣式拉伸問題
現象描述:
當text 元件的內容較多且顯示多行的時候,相鄰的div 樣式會顯示異常,會從正常的圓形變為橢圓。
問題程式碼如下:
<template> <div class="container"> <div style="align-items: center;"> <div class="typscolor" style="background-color: blue; opacity: 0.26; margin-left: 16px;"> </div> <text>{{text}}</text> <div class="typscolor" style="background-color: blue; opacity: 0.26; margin-left: 16px;"> </div> <text>{{text}}</text> <div class="typscolor" style="background-color: blue; opacity: 0.26; margin-left: 16px;"> </div> <text>{{text}}</text> </div> </div> </template> <style> .container { flex-direction: column; justify-content: center; height: 100%; } text { font-size: 24px; } .typscolor { border-radius: 50%; width: 30px; height: 30px; background-color: red; margin-right: 8px; } </style> <script> module.exports = { data: { text:'text文字內容過多時左邊的圓圈會被拉伸' }, onInit() { }, } </script>
程式碼執行效果,如下圖所示:
|
|
圖1 異常 |
圖2 正常 |
問題分析:
當text 元件內容過多時,text 元件寬度增加,相鄰div 寬度不夠,flex 佈局寬度超出會自動壓縮,從而導致div 標籤被拉伸了。
解決方法:
可以給div 標籤設定flex-shrink: 0 屬性,顯示指定不壓縮,即可解決該問題。
修改程式碼如下:
<template> <div class="container"> <div style="align-items: center;"> <div class="typscolor" style="background-color: blue; opacity: 0.26; margin-left: 16px;"></div> <text>{{text}}</text> <div class="typscolor" style="background-color: blue; opacity: 0.26; margin-left: 16px;"></div> <text>{{text}}</text> <div class="typscolor" style="background-color: blue; opacity: 0.26; margin-left: 16px;"></div> <text>{{text}}</text> </div> </div> </template> <style> .container { flex-direction: column; justify-content: center; height: 100%; } text { font-size: 24px; } .typscolor { border-radius: 50%; width: 30px; height: 30px; background-color: red; margin-right: 8px; flex-shrink: 0; /*加上該屬性即可解決拉伸問題*/ } </style> <script> module.exports = { data: { text:'text文字內容過多時左邊的圓圈會被拉伸' }, onInit() { }, } </script>
修改後程式碼執行效果如下圖所示:
欲瞭解更多詳情,請參見:
快應用通用樣式介紹:
原文連結: https://developer.huawei.com/consumer/cn/forum/topic/0201454978326300783?fid=0101271690375130218
原作者:Mayism
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69970551/viewspace-2782711/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- vue scoped 解決樣式不生效問題Vue
- div + css 樣式連線CSS
- 跨域問題?如何解決?跨域
- 如解決jquery與原生js衝突的問題jQueryJS
- 前端跨域問題如何解決前端跨域
- 如何解決TOP-K問題
- 如何解決app閃退問題APP
- 如何解決MRAM壽命問題
- 如何解決快取失效問題快取
- 做運營,如何解決問題
- 如何解決soap的效能問題?
- ntldr is missing問題如何解決?
- 解決修改element-ui樣式無法生效問題UI
- 如何解決 github 訪問慢的問題Github
- van-popup 樣式問題
- 如何解決flash跑到層上面的問題?How to resolve the div layer appear over the top of flash?...APP
- 如何解決get()函式IE瀏覽器中文亂碼問題函式瀏覽器
- 報表的效能問題是怎樣產生的?又該如何解決?
- div拖動遇到iframe卡頓的問題解決
- 如何解決sms-activate的解決問題
- 解決VUE引用element不能顯現元件css樣式問題Vue元件CSS
- DIV+CSS相容解決DIV最大寬度和最小寬度問題CSS
- 如何解決MES交付困難問題?
- 日期型別有問題,如何解決?型別
- 如何解決Facebook SDK常見問題?
- Rust 如何解決 C++ 的問題?RustC++
- mysql亂碼的問題如何解決MySql
- flutter run 卡住的問題如何解決Flutter
- 如何解決大資料安全問題大資料
- Spark任務OOM問題如何解決?SparkOOM
- 如何解決資料庫配置問題資料庫
- 頭疼,大事務問題如何解決?
- 什麼是報表的多樣性資料來源問題?如何解決?
- 如何解決網站限制IP訪問的問題網站
- 請問如何解決聊天室的私聊問題
- 最近解決的幾個DIV+CSS的問題CSS
- 如何解決OpenStack雲的互聯問題?
- 如何解決自增列賦值的問題賦值