首頁 web前端 css教學 css中關於min-height與min-width相容瀏覽器的實例詳解

css中關於min-height與min-width相容瀏覽器的實例詳解

May 21, 2018 am 09:10 AM
firefox

min-height和min-width這兩個最小高度和最小寬度的容器屬性相信大家並不陌生。

先說說min-height。這個看起來很容易。

看下面試範例:

<p style="border:5px solid #f00;min-height:200px;width:300px;padding:12px;">
    最小高度</p>
登入後複製

運行圖如下:

先別高興的太早,不要忘了已經讓你深惡痛絕,但又不得不朝夕相對的ie6.0,它是這樣回應你的:

 

沒有辦法,誰讓國富民窮的國人口袋裡沒有錢呢?或許不該這樣說。應該說誰讓我們無私的國人,把自己的口袋無償的貢獻給了國家了呢?

我們升級不起ie瀏覽器。苦逼的國人! ! !

扯遠了........

問題總是要解決的!窮人有窮人的活法。

腦中突然冒出一個現象!

程式碼:

<p style="border:5px solid #f00;height:120px;width:300px;padding:12px;">
    最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度最小高度</p>
登入後複製

 當給容器一個高度的時候,標準瀏覽器是這樣的處理的,如果沒有設定overflow的情況下,內容會超出但容器的高度不會改變!這時候,我們又回到了前面,如果要自適應高度的話,當然去掉height屬性。有時候我們需要一個最小的高度佔據一定的空間。所以引出min-height屬性。但可悲的是ie6.0不支持! !

可是同樣的程式碼我們在ie6.0裡測試結果是這樣的:

真是讓人意外! !在ie6裡面,內容超出高度height的時候,height竟然失效了! !這不正是min-height的所要達到的效果嗎?

於是乎,我們不得不對ie6.0採用hack (_height:120px)技術。這裡我說「不得不」是因為我極度討厭用hack。個中滋味自己體會,我的原則是,能不用hack盡量不用。

程式碼如下:

<p style="border:5px solid #f00;min-height:120px;_height:120px;width:300px;padding:12px;">
    最小高度</p>
登入後複製

經過測試,預期達到。

路終於走了一半了,顯然,我們不滿足於此,一顆不滿足的心才能收穫更多!在科技的道路上不防貪婪些! !

我們想要min-width也達這樣的效果。

先來測試一下:

<p style="border:5px solid #f00;min-width:120px;;padding:12px;">
    最小宽度</p>
登入後複製

可是結果讓我們很是意外,所有瀏覽器裡統統失效:

##怎麼回事?考,全罷工啦! !仔細琢磨,原來不是這樣玩的。容器的高度預設是由內容多少決定的,但寬度不是啊!預設是繼承了父容器的寬度。當然,前提是display是block。

哦,原來是這麼回事,我們得讓容器的預設寬度是內容多少來決定。

由此我想到了幾種情況:

1 display:inline      但有個問題是這樣的話width就失效了,經測試min-width同樣也失效,這種情況被pass掉了,海選啊! ! ;

2 於是乎我們想到display:inline-block屬性;嗯這應該沒問題吧! ?動手吧

程式碼如下:

<p style="border:5px solid #f00;display:inline-block;min-width:220px;;padding:12px;">
    最小宽度</p>
登入後複製

經過測試,firefox、chrome、ie8.0均有效。

可萬惡的ie6還是不行啊! !而且出來個搗亂的,ie7也不行。別,仔細看看,原來ie6和ie7就沒實現display:inline-block;

修改程式碼:

<p style="border:5px solid #f00;display:inline-block;*display:inline;zoom:1;min-width:220px;;padding:12px;">
    最小宽度</p>
登入後複製

先試試ie7,ok大功告成!再試ie6,還是「萬惡」! !別急呀,至少我們明白了min-width的用法,當寬度由內容決定的時候才起作用。多放點內容試試,是不是如我們所想內容超出的話,容器變大?

嗯,果然是。但是有個小問題,就是當內容超過瀏覽器的寬度時,還是會換行。先不管它!先解決ie6.0的問題。

仔細琢磨一下,現在又回到當初的思路了,只有i6有問題。當初是怎麼解決的?哦,ie6.0 的height本身就具備min-height 的特性。那width是不是也是如此呢?我們加個

_width:220px試試看

<p style="border:5px solid #f00;display:inline-block;*display:inline;zoom:1;min-width:220px;_width:220px;padding:12px;">
    最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度</p>
登入後複製

結果很嚴重,我們很失望。我們唯一思路也被隔間了!種麼辦?種麼辦? ....."換行!!??"那我就讓你不換行! ! !

<p style="border:5px solid #f00;display:inline-block;*display:inline;zoom:1;min-width:220px;_width:220px;padding:12px;white-space:nowrap">
    最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度最小宽度</p>
登入後複製

竟然可以了!加点内容!!!

竟然连上面的,超出浏览器宽度问题也解决了!试试其它浏览器。ie7、ie8、firefox、chrome全部通过。以外收获!

3 position:absolute 嗯这个看起来也行。

<p style="border:5px solid #f00;position:absolute;min-width:220px;_width:220px;padding:12px;white-space:nowrap">
    最小宽度</p>
登入後複製

加些内容:

依然可以,预期达到。

4 float:left 这种情况最常用。应该也行!

上代码:

<p style="border:5px solid #f00;float:left;min-width:220px;_width:220px;padding:12px;white-space:nowrap">
    最小宽度</p>
登入後複製

 

同样加些内容:

预期达到!

我能想到就这几种情况,当然里面有分析不到位的地方,请不吝指正。有些浏览器,没有测,测试完给个结果,不行的话,再想办法。

以上是css中關於min-height與min-width相容瀏覽器的實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Ubuntu Linux如何移除Firefox Snap? Ubuntu Linux如何移除Firefox Snap? Feb 21, 2024 pm 07:00 PM

要在UbuntuLinux中刪除FirefoxSnap,可以按照以下步驟進行操作:打開終端機並以管理員身份登入Ubuntu系統。執行以下命令以卸載FirefoxSnap:sudosnapremovefirefox系統將提示你輸入管理員密碼。輸入密碼並按下Enter鍵以確認。等待指令執行完成。一旦完成,FirefoxSnap將被完全刪除。請注意,這將刪除透過Snap套件管理器安裝的Firefox版本。如果你透過其他方式(如APT套件管理器)安裝了另一個版本的Firefox,則不會受到影響。透過上述步驟

mozilla firefox可以卸載嗎 mozilla firefox可以卸載嗎 Mar 15, 2023 pm 04:40 PM

mozilla firefox可以卸載;firefox屬於第三方瀏覽器,如果不需要,完全可以卸載。卸載方法:1、在開始功能表中,依序點選「Windwos系統」-「控制台」;2、在「控制台」介面中,點選「程式與功能」;3、在新介面中,找到並雙擊火狐瀏覽器圖示;4、在卸載彈窗中,點選「下一步」;5、點選「卸載」即可。

火狐瀏覽器Firefox 113 新特性:支援AV1動圖、增強密碼產生器與畫中畫特性 火狐瀏覽器Firefox 113 新特性:支援AV1動圖、增強密碼產生器與畫中畫特性 Mar 05, 2024 pm 05:20 PM

近日消息,Mozilla在發布Firefox112穩定版的同時,也宣布下個主要版本Firefox113進入Beta頻道,支援AV1動圖、增強密碼產生器和畫中畫特性。火狐瀏覽器Firefox113主要新功能/新特性如下支援AV1格式動圖(AVIS)透過引入特殊字元來增強密碼產生器的安全性增強畫中畫功能,支援後退、顯示影片時間,能更輕鬆地啟用全螢幕模式為Debian和Ubuntu發行版提供官方DEB安裝檔更新書籤導入功能,預設支援導入書籤的圖示在支援的硬體上預設啟用硬體加速AV1視訊解碼使用w

Scrapy中如何使用Mozilla Firefox來解決掃碼登入的問題? Scrapy中如何使用Mozilla Firefox來解決掃碼登入的問題? Jun 22, 2023 pm 09:50 PM

對於爬蟲爬取需要登入的網站,驗證碼或掃碼登入是一個很困擾的問題。 Scrapy是Python中一個非常好用的爬蟲框架,但在處理驗證碼或掃碼登入時,需要採取一些特殊的措施。作為一個常見的瀏覽器,MozillaFirefox提供了一個解決方案,可以幫助我們解決這個問題。 Scrapy的核心模組是twisted,它只支援非同步請求,但有些網站需要使用cookie和

Ubuntu 23.10預設將在原生 Wayland 模式下執行火狐瀏覽器 Firefox Ubuntu 23.10預設將在原生 Wayland 模式下執行火狐瀏覽器 Firefox Feb 29, 2024 am 10:10 AM

Canonical公司近日宣布,在即將發布的Ubuntu23.10中,FirefoxSnap已配置預設在Wayland模式下運作。註:Ubuntu目前已經預設Wayland會話,Firefox也能正常運作。不過目前FirefoxSnap其實是以XWayland相容模式下運行,而不是嚴苛的原生Wayland模式。 Canonical宣布預設會在Wayland模式下運行Firefox瀏覽器,從而在HiDPI顯示器不會出現介面模糊、縮放失真等問題,並且支援拖曳、手勢捏合等觸控手勢。如上所述,Ubunt

火狐瀏覽器Firefox 115發布,支援Win7/Win8.1的最後一個版本 火狐瀏覽器Firefox 115發布,支援Win7/Win8.1的最後一個版本 Mar 04, 2024 pm 04:46 PM

今日最新消息,Mozilla今天正式發布了火狐瀏覽器Firefox115穩定版更新,本次更新最值得關註一點是,這是支援Win7/Win8、macOS10.12、10.13和10.14的最後一個版本。下載網址:https://ftp.mozilla.org/pub/firefox/releases/115.0/Mozilla在官方更新日誌中表示:微軟於2023年1月結束了對Win7和Win8系統的支持,而今天發布的Firefox115版本是上述系統使用者收到的最後一個版本更新。 Win7和Win8用戶

Apache/Nginx下Font Awesome在Firefox中不顯示怎麼解決 Apache/Nginx下Font Awesome在Firefox中不顯示怎麼解決 May 21, 2023 pm 05:43 PM

一、nginx伺服器解決方法伺服器使用的是nginx,要在回應的頭部添加access-control-allow-origin字段,新增方法是用add_header指令:設定範例:複製程式碼如下:location/assets/{gzip_staticon; expiresmax;add_headercache-controlpublic;add_headeraccess-control-allow-origin*;}二、apache伺服器解決方法fontawesome(firefox無法顯示火

火狐瀏覽器Firefox 115 Beta 發布:引入 Quick Actions 火狐瀏覽器Firefox 115 Beta 發布:引入 Quick Actions Mar 04, 2024 pm 03:10 PM

昨天新消息,Mozilla發表Firefox114穩定版更新的同時,也將開發的重心遷移到Firefox115版本上,並於今天推出了Beta版本。從報告中獲悉,Firefox115引入了原本計劃在114版本中上線的CookieBannerReduction和QuickActions按鈕。使用者在Firefox115版本中啟用CookieBannerReduction之後,造訪支援的網站,瀏覽器在cookiebanners上會自動拒絕cookie要求。第二項功能是網址列上的QuickActions按鈕

See all articles