Re: [問題] 這種區塊配置的css應該怎麼寫?

看板Web_Design作者 (rocky823)時間13年前 (2011/01/08 21:20), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《ss163500 (ss163500)》之銘言: : ----------------------------------------- : | │ : | ┌───┐ │ : | │ 圖 │字字字字字字字字字字字字字 │ : | │ │字字字字字字字字字字字字 │ : | └───┘ │ : | │ : ----------------------------------------- : 如圖,一個寬度固定的div,裡面放上文字與小圖,字數跟圖片大小都不固定 : 圖片靠左,文字靠右 : 而且希望他們在div當中垂直置中,而且從ie6~chrome都沒有相容性問題 : (別叫我放棄ie6,我可不想叫別人升級之後,他的反而不能上網了,我還得負責) : HTML這樣寫 : <div class="inner"><img src="xxx.jpg"><p>字字字字字字字字字字字字</p></div> : CSS裡則是設定.inner img{float:left;margin:5px;} : 那請問我該怎麼讓文字在div中永遠垂直置中呢? : css跟html部分應該怎麼寫比較好? : 因為div高度不同,所以div的height跟line-height設同一高度的沒效 : 用table做的話瞬間就可以做完收工了,可是還是想知道css解法是怎麼寫?? : 又如果div高度固定,但是內容有時候只有多一兩行的差異 : 設相同的height跟line-height,卻又無法讓整段文字在div中垂直置中 : 請問各位大大又應該怎麼寫?? 現代的瀏覽器 可以使用table-cell + vertical-align 舊版的 可用css expression /* CSS 可隨意變換.inner 高度 */ .inner{border:1px dashed #ccc;width:500px;height:300px;text-align:center;display:table-cell; vertical-align: middle;} .inner img{float:left;margin-right:5px;} .middle{width:200px;display:inline-block;*zoom:1;*display:inline;text-align:left; +margin-top:expression( (this.parentNode.clientHeight-this.clientHeight)/2 +'px');} <!-- DOM --> <div class="inner"> <div class="middle"> <img src="//dummyimage.com/50x50"> <p>字字字字字字字字字字字字字字字字字字字字字字字字</p> </div> </div> demo http://fiddle.jshell.net/pKCLG/1/show/light/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.229.57

01/09 16:36, , 1F
有點複雜~還是謝謝你~ 不管怎樣 能達到效果的就是好語法
01/09 16:36, 1F
文章代碼(AID): #1DA6I1vR (Web_Design)
文章代碼(AID): #1DA6I1vR (Web_Design)