css overflow

第一回 overflow基本屬性

???????? overflow基本屬性

?????????????????? visibel

?????????????????? hidden

?????????????????? scroll

?????????????????? auto

?????????????????? inherit

???????? overflow-x和overflow-y

???????? overflow-x和overflow-y設置一樣的值,等同于overflow。如果不同壹罚,其中一個賦予visibel党涕,auto,另一個賦值visibel次兆,auto ,hidden。則會被重置為auto弟晚。


???????? 作用的前提

?????????????????? 1.非display:inline水平!

?????????????????? 2.對應方位的尺寸限制逾苫,width/height/max-width/max-height/absolute拉伸


???????? overflow:visibel妙用

?????????????????? IE7瀏覽器下卿城,文字越多,按鈕兩側(cè)padding留白就越大铅搓。給所有按鈕添加css樣式 overflow:visible

第二回:overflow與滾動條

???????? 滾動條出現(xiàn)的條件

?????????????????? 1.overflow:auto/overflow:scroll 有些元素自帶滾動條 <html> <textarea>


???????? body/html與滾動條

?????????????????? 無論什么瀏覽器瑟押,默認滾動條均來自html!而不是body標簽

?????????????????? ie8+ html{overflow:auto}


???????? 所以,如果我們想要去除頁面默認滾動條星掰,只需要:html{overflow:hidden}

???????? body/html與滾動條-js與滾動高度

???????? 兼容寫法

?????????????????? var st = document.body.scrollTop || document.documentElement.scrollTop


???????? overflow的padding-bottom缺失現(xiàn)象

?????????????????? .box{width:400px;height:100px;padding:100px 0; overfow:auto;}在chrome瀏覽器下bottom是可以滾動出來的多望。

???????? 滾動條的寬度

?????????????????? 盒子寬度(帶滾動條)-盒子內(nèi)寬度 = 滾動條寬度

?????????????????? IE firefox chrome均是17像素。

???????? 水平居中跳動問題

?????????????????? 修復方法 1.html{overflow-y:scroll;}

??????????????????????????? ?2. .container{padding-left:calc(100vw-100%);}

??????????????????????????? ?100vw - 瀏覽器寬度氢烘;100%-可用內(nèi)容寬度

???????? 自定義滾動條-webkit

?????????????????? 整體部分

??????????????????????????? ::-webkit-scrollbar

?????????????????? 兩端按鈕

??????????????????????????? ::-webkit-scrollbar-button

?????????????????? 外層軌道

??????????????????????????? ::-webkit-scrollbar-track

?????????????????? 內(nèi)層軌道

??????????????????????????? ::-webkit-scrollbar-track-piece

?????????????????? 滾動滑塊

??????????????????????????? ::-webkit-scrollbar-thumb

?????????????????? 邊角

??????????????????????????? ::-webkit-scrollbar-corner

?????????????????? 實際常用

??????????????????????????? ::-webkit-scrollbar{//寬度

???????????????????????????????????? width:8px; height:8px;

??????????????????????????? }

??????????????????????????? ::-webkit-scrollbar-thumb{//拖動條

???????????????????????????????????? background-color:rgba(0,0,0,.3);

???????????????????????????????????? border-radius : 6px;

??????????????????????????? }

??????????????????????????? ::-webkit-scrollbar-track{//背景槽

???????????????????????????????????? background-color:#ddd;

???????????????????????????????????? border-radius:6px;

??????????????????????????? }

?????????????????? 自定義滾動條-IE

?????????????????? 可以使用自定義滾動插件


?????????????????? IOS原生滾動回調(diào)效果

??????????????????????????? -webkit-overflow-scrolling:touch;

第三回:overflow與BFC

???????? 清除浮動怀偷,自適應布局等。


???????? BFC block formatting context 塊級格式化上下文

?????????????????? 頁面之結(jié)界播玖,內(nèi)部元素在怎么折騰都影響不到外面椎工。


?????????????????? overflow與BFC

??????????????????????????? 1.清除浮動影響

??????????????????????????? 2.避免margin穿透問題

??????????????????????????? 3.兩欄自適應布局

?????????????????? 內(nèi)部浮動無影響

??????????????????????????? .clearfix{*zoom:1;}

??????????????????????????? .clearfix:after{centent:'';display:table;clear:both;}

?????????????????? 避免margin穿透問題

??????????????????????????? 設置overflow:scroll

??????????????????????????? ??? overflow:auto

??????????????????????????? ??? overflow:hidden

?????????????????? 為什么有這樣特性?

??????????????????????????? 流體特性下自適應布局

???????????????????????????????????? 1.左浮動,右普通

?????????????????????????????????????????????? .left{float:left;width:128px;}

?????????????????????????????????????????????? .right{min-height:190px;background-color:#beceeb}

???????????????????????????????????? 2.左浮動维蒙,右margin

?????????????????????????????????????????????? .left{float:left;width:128px;}

?????????????????????????????????????????????? .right{min-height:190px;margin-left:150px;background-color:#beceeb}

???????????????????????????????????? 3.左浮動掰吕,右padding

?????????????????????????????????????????????? .left{float:left;width:128px;}

?????????????????????????????????????????????? .right{min-height:190px;padding-left:150px;background-color:#beceeb}

???????????????????????????????????? 4.左浮動

?????????????????????????????????????????????? .left{float:left;width:128px;}

?????????????????????????????????????????????? .right{min-height:190px;overflow:hidden;background-color:#beceeb}

?????????????????? 給div設置了overflow屬性就是將元素BFC化,使用padding做流體自適應布局時候木西,萬萬不可讓自適應層BFC化畴栖。


?????????????????? 是不是所有BFC屬性都有如此表現(xiàn)

??????????????????????????? yes.由于自身特性,具體表現(xiàn)不一

??????????????????????????? overflow:hidden;????? 自適應八千,單溢出不可見 限制應用場景

??????????????????????????? float + float 包裹性+破壞性 無法自適應吗讶,塊狀浮動布局

??????????????????????????? position:absolute 脫離文檔流,自娛自樂

??????????????????????????? display:inline-block 包裹性恋捆,無法自適應

??????????????????????????? display:table-cell 包裹性照皆,但天生無溢出特性,絕對寬度也能自適應沸停。

??????????????????????????? 只有overflow:hidden,display:inline-block,display:table-cell能使元素BFC化


?????????????????? 兩欄自適應布局

??????????????????????????? .cell{

???????????????????????????????????? display:table-cell; width:2000px; //2000保證比父元素大

???????????????????????????????????? *display:inline-block;*width:auto; //IE7-偽BFC特性

??????????????????????????? }

第四回:overflow與絕對定位

???????? 隱藏失效與滾動固定

???????? overflow:hidden失效

?????????????????? .overflow-hidden{

??????????????????????????? width:300px;

??????????????????????????? height:200px;

??????????????????????????? border:5px solid #333;

??????????????????????????? overflow:auto

?????????????????? }

?????????????????? img{postion:absolute;}

???????? 失效原因

?????????????????? 絕對定位元素不總被父級overflow屬性剪裁膜毁,尤其當overflow在絕對定位元素及其包含塊之間的時候

?????????????????? 包含塊指 “含position:relative/absolute/fixed”聲明的父級元素,沒有則body元素

???????? 如何避免失效

?????????????????? 1.overflow元素自身成為包含塊

?????????????????? 2.overflow元素的子元素成為包含塊

?????????????????? 3.任意合法transform聲明當作包含塊

???????? overflow失效妙用

?????????????????? h0{height:0;}

?????????????????? .ovh{overflow:hidden;}

?????????????????? .tr{text-align:right;}

?????????????????? .abs{position:absolute;}

?????????????????? <div class="h0 ovh tr">

??????????????????????????? &nbsp;<img src="" class="abs ml10 mt30"></img>

?????????????????? </div>

第五回:依賴overflow的樣式表現(xiàn)

???????? resize拉伸

?????????????????? css3有個屬性名為resize愤钾,可以拉伸元素尺寸瘟滨。

?????????????????? .resize:both???? 水平垂直兩邊拉;

?????????????????? .resize:horizontal 只有水平方向拉伸

?????????????????? .resize:vertical?? 只有垂直方向拉伸

?????????????????? 但是能颁,此聲明想要其作用杂瘸,元素的overflow屬性值不能是visible!

?????????????????? <button style="resize:both;overflow:hidden">按鈕</button>

?????????????????? 這樣一個按鈕就可以實現(xiàn)拉伸效果了伙菊。


?????????????????? 文本域自帶resize屬性败玉,因為文本域默認overflow:auto

?????????????????? 文本域resize拖拽漁區(qū)大小是17*17像素。 也就是滾動條的尺寸


???????? ellipsis文字溢出點點點省略

?????????????????? text-overflow:ellipsis

?????????????????? <button style="width:200px;white-space:norwrap;text-overflow:ellipsis;overflow:hidden">這是一個按鈕镜硕,寬度僅200像素</button>

第六回:overflow與錨點技術

???????? 錨點定位的本質(zhì):該變?nèi)萜鞯臐L動高度


???????? 錨點對位的觸發(fā)

?????????????????? 1.url地址中的錨鏈與錨點元素运翼;

?????????????????? 2.可focus的錨點元素處于focus態(tài);

???????? 錨點定位的作用

?????????????????? 1.快速定位

?????????????????? 2.錨點定位與overflow選項卡技術


???????? 應用場景:單頁應用? ? ?

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末兴枯,一起剝皮案震驚了整個濱河市血淌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌财剖,老刑警劉巖悠夯,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異峰伙,居然都是意外死亡疗疟,警方通過查閱死者的電腦和手機该默,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進店門瞳氓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事匣摘〉晔” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵音榜,是天一觀的道長庞瘸。 經(jīng)常有香客問我,道長赠叼,這世上最難降的妖魔是什么擦囊? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮嘴办,結(jié)果婚禮上瞬场,老公的妹妹穿的比我還像新娘。我一直安慰自己涧郊,他們只是感情好贯被,可當我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著妆艘,像睡著了一般彤灶。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上批旺,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天幌陕,我揣著相機與錄音,去河邊找鬼朱沃。 笑死苞轿,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的逗物。 我是一名探鬼主播搬卒,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼翎卓!你這毒婦竟也來了契邀?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤失暴,失蹤者是張志新(化名)和其女友劉穎坯门,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體逗扒,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡古戴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了矩肩。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片现恼。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出叉袍,到底是詐尸還是另有隱情始锚,我是刑警寧澤,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布喳逛,位于F島的核電站瞧捌,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏润文。R本人自食惡果不足惜姐呐,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望典蝌。 院中可真熱鬧皮钠,春花似錦、人聲如沸赠法。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽砖织。三九已至款侵,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間侧纯,已是汗流浹背新锈。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留眶熬,地道東北人妹笆。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像娜氏,于是被迫代替她去往敵國和親拳缠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案贸弥? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,753評論 1 92
  • day01-_起源和結(jié)構 結(jié)構:Xhtml xml 表現(xiàn):CSS 行為:DOM ECMAScript 以上都屬于W...
    Sakura_明妃閱讀 1,185評論 0 1
  • 當你習慣夜色的時候 夜色不一定習慣你 從它的高度俯視窟坐、注視、凝視 甚至質(zhì)疑你 當然绵疲,你并不會忘記那些 與夜為伴哲鸳,陪...
    芴忘閱讀 549評論 1 6
  • 來的初衷那樣清晰,可到如今又有種泥足陷入的感覺盔憨,或許我終究不是這條路上的人徙菠,這條路上的每一步,都至痛無比……我討厭...
    伴我書生琴韻閱讀 211評論 0 0
  • 2017年8月8日 星期一 自己隱藏了許久的秘密芙盘,被突然公開,看著父母的滿面愁容脸秽,越來越覺得自己就是個混蛋,也覺...
    司空君雅閱讀 296評論 1 0