CSS DIV布局網頁內容在IE下不顯示的原因

時間 2022-02-19 14:40:10

1樓:匿名使用者

之前看到很多人一直都問這個問題,不過當時我沒當一回事,因為在 css 中要垂直居中,多數是在有高度的情況下,或者容器高度不定的情況下才用,看上去比較舒服,而且實現的方法也不少,不一定要拘泥於和 table 布局一樣。不過最近有人問了幾個例子,看來對此的需求還不少。現在就把我經驗拿出來分享一下,希望大家鼓鼓掌。

首先,要有乙個概念:凡是 table 布局可以實現的,css 一定可以實現。css 可以實現的,table 未必能做到。

現在來幾個例子:

一、單行內容的居中

只考慮單行是最簡單的,無論是否給容器固定高度,只要給容器設定 line-height 和 height,並使兩值相等,再加上 over-flow: hidden 就可以了

.middle-demo-1

優點:1. 同時支援塊級和內聯極元素

2. 支援所有瀏覽器

缺點:1. 只能顯示一行

2. ie中不支援等的居中

要注意的是:

1. 使用相對高度定義你的 height 和 line-height

2. 不想毀了你的布局的話,overflow: hidden 一定要

為什麼?

二、多行內容居中,且容器高度可變

也很簡單,給出一致的 padding-bottom 和 padding-top 就行

.middle-demo-2

優點:1. 同時支援塊級和內聯極元素

2. 支援非文字內容

3. 支援所有瀏覽器

缺點:容器不能固定高度

三、把容器當作**單元

css 提供一系列diplay屬性值,包括 display: table, display: table-row, display:

table-cell 等,能把元素當作**單元來顯示。這是再加上 vertical-align: middle, 就和**中的 valign="center" 一樣了。

.middle-demo-3

可惜ie不支援這些屬性,不過在其他瀏覽器上顯示效果非常完美。

要注意的是:和乙個合法的元素必須在裡一樣,display: table-cell 元素必須作為 display: table 的元素的子孫出現。

優點:不用說了吧,就是**,效果和**一模一樣

缺點:ie下無效

四、以毒攻毒!用 ie 的 bug 解決 ie 中的絕對居中

先不得不說一句,ie 真的是個很爛的瀏覽器,css1中的定義都不支援,害得要我們轉個大圈子來造居中。不過就像我說的,凡是 table 布局可以實現的,css 一定可以實現,即使在 ie 裡也不例外。我研究 ie layout 模式多年,還是找出了乙個可以在 ie 中絕對居中的方法。

這個方法就是基於 ie layout 的 bug,也可以算以毒攻毒。至於原理,不要問我,這是獨門秘學,何況三言兩語也講不清楚,只要好用就行

.middle-demo-4

.middle-demo-4 div

.middle-demo-4 div div

2樓:匿名使用者

就憑這麼一張圖,叫找問題,還真是讓人頭疼,又不是找樁=w=,至少有條頁面位址,或html**吧…

現在能想到的:

一、細心檢查不顯示那部分**有沒錯漏。

二、把文件宣告(dtd)刪掉試試。

三、把編碼改為gb2312

四、在頁面 右擊>編碼>自動(或utf-8)上面幾點,自己各試試。

3樓:匿名使用者

檢視 css 檔案中 是否有注釋,將注釋刪除 或者font-family:"微軟雅黑" 這種 中文字型 ,「宋體」 沒事

4樓:匿名使用者

瀏覽器不同內建差別很大的,你可能乙個標籤寫錯了,有的就能忽略錯誤,有的就顯示不出來

5樓:

不同版本瀏覽器對css的解析有差異。確認包含主體內容的div樣式是否有問題,可以找個css初始化的**放在css檔案的最前面,再看不同瀏覽器中的差異。

6樓:匿名使用者

把全部頁面的編碼屬性調整db2312試試

7樓:匿名使用者

1.嘗試將編碼改成gb2312看看是否可行?

2.檢視一下你的html結構和css檔案裡面有中文注釋嗎?有時候,中文的注釋會因為編碼錯誤產生亂碼影響html和樣式的輸出,我以前曾經歷過。

那次是因為css檔案的中文注釋編碼錯誤變成英文亂碼和css正文錯誤連線,造成樣式混亂。

3.還有乙個就是css和html檔案meta設定編碼最好要一致,可以嘗試用記事本開啟css檔案-》另存為(此時在下方可以選擇編碼方式,選擇一下utf-8),覆蓋儲存,試一下。或者在css檔案最頂部放在@charset "utf-8";

反正,總之,我遇到的類似情況基本都是編碼的問題,你可以參考

8樓:匿名使用者

1.沒有定義高寬

2.文字顏色和背景色相同

3.z-index不在最底層

4.**書寫不規範

9樓:壞寶貝兒

這是乙個瀏覽器相容性的問題

10樓:匿名使用者

把你的注視去掉 看看是否可行

11樓:匿名使用者

這個問題是與le有關相不相容,建議你對le公升級或更換。

css樣式在ie中不能正常顯示

12樓:育知同創教育

css樣式在ie中不能正常顯示是因為存在相容性問題。

以padding的相容性為例:

padding:10px;

padding:9px\9; /* all ie */padding:8px\0; /* ie8-9 */*padding:

5px; /* ie6-7 */+padding:7px; /* ie7 */_padding:6px; /* ie6 */

13樓:黑馬黃子

-webkit-column-count:2;

-webkit-column-gap:30px;

不支援ie瀏覽器

-webkit-column-count:2;

-webkit-column-gap:30px;

-ms-column-count:2;

-ms-column-gap:30px;

column-count:2;

column-gap:30px;

網頁布局div+css,在ie中能顯示居中的,在火狐上不能顯示居中

14樓:明天科技彈

之前看到很多人一直都問這個問題,不過當時我沒當一回事,因為在 css 中要垂直居中,多數是在有高度的情況下,或者容器高度不定的情況下才用,看上去比較舒服,而且實現的方法也不少,不一定要拘泥於和 table 布局一樣。不過最近有人問了幾個例子,看來對此的需求還不少。現在就把我經驗拿出來分享一下,希望大家鼓鼓掌。

首先,要有乙個概念:凡是 table 布局可以實現的,css 一定可以實現。css 可以實現的,table 未必能做到。

現在來幾個例子:

一、單行內容的居中

只考慮單行是最簡單的,無論是否給容器固定高度,只要給容器設定 line-height 和 height,並使兩值相等,再加上 over-flow: hidden 就可以了

.middle-demo-1

優點:1. 同時支援塊級和內聯極元素

2. 支援所有瀏覽器

缺點:1. 只能顯示一行

2. ie中不支援等的居中

要注意的是:

1. 使用相對高度定義你的 height 和 line-height

2. 不想毀了你的布局的話,overflow: hidden 一定要

為什麼?

二、多行內容居中,且容器高度可變

也很簡單,給出一致的 padding-bottom 和 padding-top 就行

.middle-demo-2

優點:1. 同時支援塊級和內聯極元素

2. 支援非文字內容

3. 支援所有瀏覽器

缺點:容器不能固定高度

三、把容器當作**單元

css 提供一系列diplay屬性值,包括 display: table, display: table-row, display:

table-cell 等,能把元素當作**單元來顯示。這是再加上 vertical-align: middle, 就和**中的 valign="center" 一樣了。

.middle-demo-3

可惜ie不支援這些屬性,不過在其他瀏覽器上顯示效果非常完美。

要注意的是:和乙個合法的元素必須在裡一樣,display: table-cell 元素必須作為 display: table 的元素的子孫出現。

優點:不用說了吧,就是**,效果和**一模一樣

缺點:ie下無效

四、以毒攻毒!用 ie 的 bug 解決 ie 中的絕對居中

先不得不說一句,ie 真的是個很爛的瀏覽器,css1中的定義都不支援,害得要我們轉個大圈子來造居中。不過就像我說的,凡是 table 布局可以實現的,css 一定可以實現,即使在 ie 裡也不例外。我研究 ie layout 模式多年,還是找出了乙個可以在 ie 中絕對居中的方法。

這個方法就是基於 ie layout 的 bug,也可以算以毒攻毒。至於原理,不要問我,這是獨門秘學,何況三言兩語也講不清楚,只要好用就行

.middle-demo-4

.middle-demo-4 div

.middle-demo-4 div div

15樓:火狐

尊敬的使用者,您好!很高興為您答疑

這是常見的css相容問題所致,如果在ie中正常的樣式在firefox出現此類顯示異常,請您檢查一下您的物件巢狀關係,一般這種情況都是因為父類物件無法正常獲取全域性寬度所致。建議考慮使用js動態獲取寬度後進行樣式重置以解決問題。

希望我的回答對您有所幫助,如有疑問,歡迎繼續諮詢我們。

16樓:台海亦

估計是你把w3c那段頭部去掉了。也有可能是其它原因。你問題也沒問具體呀。

17樓:

這個你得加一段for 火狐的**,解釋一下,或者div+sss的最外麵包個table

18樓:匿名使用者

.通用

css div製作html網頁的相容性問題 在ie 瀏覽器和 360 瀏覽器中顯示正常 但是在其他瀏覽器不正常

19樓:夢很甜

所有的內容成直線排列那就是寬度不夠,內容被擠下來了,加大寬度就好了或者overflow:hidden隱藏超出的內容

20樓:素質流氓灬

你可以不同瀏覽器設定不同的屬性、

區別 ie6與 ff:

1background:orange;*background:blue;

區別 ie6與 ie7: 1background:green!important;background:blue;

區別 ie7與 ff: 1background:orange; *background:green;

區別 ff, ie7, ie6: 1background:orange;*background:green!important;*background:blue;

注:ie都能識別*;標準瀏覽器(如ff)不能識別*;ie6能識別*,但不能識別 !important,ie7能識別*,也能識別!

important;ff不能識別*,但能識別!important;

ie6ie7ff*√√×!important×√√

另外再補充乙個,下劃線"_",

ie6支援下劃線,ie7和firefox均不支援下劃線。

CSS DIV佈局如何讓div的位置隨著另div的大

一動出行 先確定div1的大小。然後再div2和div3都加上float的屬性,這樣只要div2或div3有一個大小在變化,另外一個div的位置也會跟著一起變化。 middle foot 如果html是上面正常結構,css裡面你沒亂用定位去佈局大的版面排版,並且有浮動的地方正確的浮動了,那麼正常情況...

CSS DIV怎麼實現網頁左右兩欄高度一致

五月五日 方法一 用js獲取右側div的高度,將這個高度值賦值給左側的高度 方法二 新增一個父div包含左側和右側的div,設定父div的背景顏色為左側div的顏色,右側div背景顏色設定為白色 可以通過jq來獲取右邊高度再付值給左邊。這樣,右邊內容再多,jq也能把它的高度付值給左邊,這樣就會兩邊一...

會ps,dw,div css佈局,可以去找網頁設計網頁製作的工作了嗎

斂軒 可以,設計師助理應該差不多,現在很多公司設計和製作是分開的,如果是設計的話,那麼必須有作品,而且要設計的高階,大氣,上檔次,如果是製作的話,就還需要學js html5.css3,這是現在的最新技術。也是以後的趨勢。更多的技術和提升還是要在工作中得到! 程式設計師人生 如果你會,是肯定能找到工作...