国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

CSS實(shí)現(xiàn)模擬float: center文字左右環(huán)繞圖片的效果

you_De / 2619人閱讀

摘要:什么是文字左右環(huán)繞圖片就是下圖的效果效果的代碼可以點(diǎn)擊這里查看在中,并沒有這種設(shè)置,但是我們可以通過一些小技巧來模擬出類似的效果。下面,就要使用一些技巧來實(shí)現(xiàn)左右環(huán)繞的文字效果了。

什么是文字左右環(huán)繞圖片?就是下圖的效果:

效果的CSS代碼可以點(diǎn)擊這里查看

在CSS中,并沒有float: center這種設(shè)置,但是我們可以通過一些小技巧來模擬出類似的效果。

經(jīng)常會(huì)有小伙伴問:有float: left和right,為什么沒有float: center?我的答案是:

1.text-align: center已經(jīng)可以實(shí)現(xiàn)內(nèi)聯(lián)元素的居中效果

2.在一行中使文字環(huán)繞顯示在圖片的兩側(cè),這種效果瀏覽器處理起來是非常困難的。除非將文字顯示為兩列,但這是另一個(gè)問題

3.當(dāng)涉及到文本時(shí),float實(shí)際上應(yīng)該被稱為環(huán)繞,float:left的意思是“將這個(gè)元素放置在容器的左側(cè),并將其右側(cè)的所有內(nèi)容都環(huán)繞其顯示”,在這種情況下,我們討論的float:center實(shí)際上是兩側(cè)環(huán)繞,這會(huì)帶來一系列的問題,比如如何確定元素在容器中的“深度”?

為了模擬實(shí)現(xiàn)float: center的效果,我們通過創(chuàng)建兩個(gè)div將文字劃分為兩列,其中居中的圖片寫在第一個(gè)div中:

京都位于本州島的中心附近,在王位移到江戶...

因此,京都許多保存下來的地方都是聯(lián)合國教科文組織世界遺產(chǎn),包括...

首先,我們?cè)O(shè)置兩個(gè)div即.leftcol和.rightcol元素為display: table-cell,同時(shí)將容器.container元素設(shè)置為display: table:

div#container { 
  display: table; 
  width: 80%;
  max-width: 900px;  /* 容器最大寬度900px */
  margin: 0 auto;
  line-height: 1.5;
}
div#leftcol, div#rightcol { 
  display: table-cell; 
  padding: 1em;
}
div#container img {
  width: 55%;  /* 圖片的寬度是第一列div寬度的55% */
  height: auto;
}

這樣,文字就顯示成為表格的兩列了:

圖片會(huì)按照其該有的樣式顯示在第一列的頂部左側(cè),并且底部與文字的第一行的基線對(duì)齊。

接下來,如果給圖片設(shè)置一個(gè)float:right,它就會(huì)在第一個(gè)div中右側(cè)浮動(dòng),并且文字會(huì)環(huán)繞在圖片的左側(cè)顯示:

到這里,我們實(shí)現(xiàn)了一個(gè)最傳統(tǒng)的布局:兩列文字,其中一列包含一張浮動(dòng)的圖片。

下面,就要使用一些技巧來實(shí)現(xiàn)左右環(huán)繞的文字效果了。

第一步,通過設(shè)置margin-right屬性負(fù)值,將圖片右移一定的距離:

div#container img {
  float: right;
  width: 55%;
  height: auto;
  margin-right: -20%;  /* 圖片向右移動(dòng)第一個(gè)div寬度20%的距離 */
  margin-left: 20px;
  margin-bottom: 20px;
}

margin-left和margin-bottom屬性設(shè)置圖片與左側(cè)和下方的文字都間距20px。

這個(gè)時(shí)候圖片會(huì)和第二列的文字顯示重合了:

第二步,通過:before偽元素在第二個(gè)div中生成一個(gè)元素,它不包含任何內(nèi)容,僅僅是為了浮動(dòng)后讓文字環(huán)繞它。

div#rightcol:before { 
  content: " "; 
  float: left; 
  width: 25%;
  padding-top: 102%;
}

這個(gè)偽元素被設(shè)置為左浮動(dòng),并且它的寬度與圖片右移的距離加起來剛好是圖片的寬度。

padding-top屬性設(shè)置的稍微大一點(diǎn),這樣文字與圖片能夠空出一些距離。

如果給這個(gè)沒有任何內(nèi)容的偽元素添加一個(gè)紅色的邊框,我們就可以看到它的位置:

這個(gè)空偽元素的實(shí)際作用就是將與圖片重合的文字隔開,并使它們環(huán)繞,這樣就模擬出了右側(cè)文字環(huán)繞圖片的效果,而實(shí)際上文字環(huán)繞的是偽元素。

這種環(huán)繞方式有一個(gè)限制,就是圖片必須位于div的頂部,我們不能在垂直方向上任意放置圖片。

最后,再設(shè)置一些美化的樣式和自適應(yīng)的代碼,最終的效果就實(shí)現(xiàn)了:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/114550.html

相關(guān)文章

  • CSS實(shí)現(xiàn)模擬float: center文字左右環(huán)繞圖片效果

    摘要:什么是文字左右環(huán)繞圖片就是下圖的效果效果的代碼可以點(diǎn)擊這里查看在中,并沒有這種設(shè)置,但是我們可以通過一些小技巧來模擬出類似的效果。下面,就要使用一些技巧來實(shí)現(xiàn)左右環(huán)繞的文字效果了。 什么是文字左右環(huán)繞圖片?就是下圖的效果:showImg(https://segmentfault.com/img/bVbr3Wt?w=627&h=461); 效果的CSS代碼可以點(diǎn)擊這里查看 在CSS中,并...

    ShevaKuilin 評(píng)論0 收藏0
  • 重塑你CSS世界觀——浮動(dòng)魔鬼float

    摘要:而在文檔流中,如果浮動(dòng)元素和跟隨元素都是元素,它們兩在默認(rèn)情況下都將占據(jù)一行。而由于浮動(dòng)元素脫離了文檔流,如果父元素沒有指定高度或者其他元素?fù)纹穑簿统霈F(xiàn)了所謂的浮動(dòng)元素的父元素高度塌陷。 為什么要寫《重塑你的CSS世界觀》系列文章 由于從工作到現(xiàn)在,我的主要工作都是寫JavaScript,幾乎沒怎么碰CSS,通常都是別人寫好界面,然后我來開發(fā)JavaScript邏輯代碼,這導(dǎo)致了嚴(yán)重...

    joyqi 評(píng)論0 收藏0
  • 重塑你CSS世界觀——浮動(dòng)魔鬼float

    摘要:而在文檔流中,如果浮動(dòng)元素和跟隨元素都是元素,它們兩在默認(rèn)情況下都將占據(jù)一行。而由于浮動(dòng)元素脫離了文檔流,如果父元素沒有指定高度或者其他元素?fù)纹?,也就出現(xiàn)了所謂的浮動(dòng)元素的父元素高度塌陷。 為什么要寫《重塑你的CSS世界觀》系列文章 由于從工作到現(xiàn)在,我的主要工作都是寫JavaScript,幾乎沒怎么碰CSS,通常都是別人寫好界面,然后我來開發(fā)JavaScript邏輯代碼,這導(dǎo)致了嚴(yán)重...

    frank_fun 評(píng)論0 收藏0
  • CSS基礎(chǔ)入門之float

    摘要:在正常情況下,頁面總是從左到右,從上到下布局,這種被稱為正常的流。破壞文檔流這是最本質(zhì)的特性,因此設(shè)計(jì)的初衷就是破壞文檔流。但是也有一種情況是,浮動(dòng)元素前后并沒有內(nèi)聯(lián)元素,因此也就不存在行框盒子,這時(shí)候就是浮動(dòng)錨點(diǎn)在起作用。 前幾天有小伙伴說對(duì)float的學(xué)習(xí)云里霧里的,下面我就給大家說一下關(guān)于float的一些問題。 在css中,是存在流的概念的。在正常情況下,頁面總是從左到右,從上到...

    xinhaip 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<