解決Extjs 4 Panel作為Window組件的子組件時(shí)出現(xiàn)雙重邊框問題
Extjs的Panel和Window等組件在默認(rèn)情況下是帶邊框的,通常情況下,單獨(dú)使用沒有什么關(guān)系,但是將Panel作為Window組件的子組件時(shí)就會(huì)出現(xiàn)雙重邊框的現(xiàn)象,如果Window組件中含有兩個(gè)或者兩個(gè)以上的Panel,那么Panel和Panel組件之間的邊框會(huì)重復(fù)累加,也就是說會(huì)變成雙重邊框。實(shí)際上雙重邊框并不是很影響外觀,但多少看上去會(huì)有些不太令人滿意,因此我們就得想辦法將兩重邊框去掉,變成單邊框。下面是前后兩張對(duì)比圖,大家仔細(xì)觀察一下兩個(gè)window的邊框部分,可以發(fā)現(xiàn)前者較粗,后者較細(xì)。
圖一
圖二
下面我們就要想解決的辦法了。
首先想到的是我們可以讓W(xué)indow的邊框?yàn)?,即設(shè)置Window組件的屬性border:false,此時(shí),可以發(fā)現(xiàn)Window四周的邊框編程單邊框了,但是Window里面上面的GridPanel和下面的Panel之間還是會(huì)有雙重邊框,顯得不協(xié)調(diào),而且底部的工具條的四周沒有了邊框(因?yàn)椤氨4妗卑粹o所在的工具條是屬于Window,Window的邊框沒有了之后,當(dāng)然會(huì)影響到底部工具條的邊框)。于是這種方案不可行。棄之!
第二種方案是保留Window組件的邊框,想辦法去掉Panel的邊框,通過查ExtJS的幫助文檔,發(fā)現(xiàn)可以通過定義bodyStyle來控制Panel的樣式。于是給上面的Panel分別設(shè)置bodyStyle屬性,GridPanel:bodyStyle: 'border-width:1px 0 1px 0;',下方的Panel:bodyStyle: 'border-width:1px 0 0 0; background:transparent',之后在刷新重新看效果,發(fā)現(xiàn)邊框確實(shí)編程但邊框了,但是還有一部分邊框是雙重的,即時(shí)上面那個(gè)GridPanel的表頭的兩側(cè),以及下面按個(gè)Panel的Header的兩側(cè)。開來這種辦法還是比較靠譜的。我們?cè)诰男薷囊幌戮秃昧?。下一步要做的就是,為每一個(gè)Panel定義一個(gè)cls屬性,然后對(duì)通過自己寫樣式來限制表頭以及header的樣式,即覆蓋ExtJS默認(rèn)的樣式(只是修改border的樣式)。通過Chrome的“審查元素”發(fā)現(xiàn):表頭默認(rèn)的一個(gè)CSS樣式類是x-grid-header-ct,Panel默認(rèn)的一個(gè)樣式類是x-panel-header。下面要做的就是自己寫樣式來覆蓋以前的樣式了,比如我為兩個(gè)Panel設(shè)置的cls為addr-panel,然后新加CSS樣式類.addr-panel .x-grid-header-ct{border-width: 1px 0 0 0 !important;},.addr-panel .x-panel-header{border-width:0;}。保存之后刷新之后查看效果,就是圖二的效果了,完成!
如果以后我們?cè)谟龅筋愃频膯栴}都可以考慮用CSS樣式來解決。(完)^_^
- js實(shí)現(xiàn)通用的微信分享組件示例
- JS表格組件神器bootstrap table詳解(基礎(chǔ)版)
- JS組件Bootstrap實(shí)現(xiàn)彈出框和提示框效果代碼
- JS組件Bootstrap Select2使用方法詳解
- JS組件Bootstrap Table使用方法詳解
- Js組件的一些寫法
- ExtJs 學(xué)習(xí)筆記基礎(chǔ)篇 Ext組件的使用
- jquery滾動(dòng)組件(vticker.js)實(shí)現(xiàn)頁面動(dòng)態(tài)數(shù)據(jù)的滾動(dòng)效果
- JS組件Form表單驗(yàn)證神器BootstrapValidator
- JS組件系列之使用HTML標(biāo)簽的data屬性初始化JS組件
相關(guān)文章
Ext JS 4實(shí)現(xiàn)帶week(星期)的日期選擇控件(實(shí)戰(zhàn)一)
有一些日期選擇的需求是要看到星期,就是日期中的哪一天是這一年的第幾周,遺憾的是Ext js 并沒有提供這樣的配置,下面為大家分享下理想的解決方法2013-08-08Extjs NumberField后面加單位實(shí)現(xiàn)思路
本文為大家介紹下在NumberField后面加單位,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下2013-07-07ext中store.load跟store.reload的區(qū)別示例介紹
這篇文章主要介紹了ext中store.load跟store.reload的區(qū)別,需要的朋友可以參考下2014-06-06Ext JS框架中日期函數(shù)的用法及日期選擇控件的實(shí)現(xiàn)
Ext JS中的Ext.Date可以看作是JavaScript中date的加強(qiáng)版,提供了許多進(jìn)階的日期操作函數(shù),下面我們就來看一下Ext JS框架中日期函數(shù)的用法及日期選擇控件的實(shí)現(xiàn)2016-05-05Extjs4 GridPanel的主要配置參數(shù)詳細(xì)介紹
主要配置項(xiàng):store:表格的數(shù)據(jù)集、columns:表格列模式的配置數(shù)組,可自動(dòng)創(chuàng)建ColumnModel列模式等等2013-04-04extjs grid設(shè)置某列背景顏色和字體顏色的實(shí)現(xiàn)方法
extjs grid設(shè)置某列背景顏色和字體顏色的實(shí)現(xiàn)步驟,需要的朋友可以參考下。2010-09-09ExtJS4 表格的嵌套 rowExpander應(yīng)用
今天做一個(gè)grid,里面的數(shù)據(jù)需要帶明細(xì),思來想去還是搞個(gè)表格嵌套吧,需要的朋友可以參考下2014-05-05