最近在給公司做一個網站,期間又遇到了些新問題。話說,最值得自豪的是所有相容問題一下就解決了,比如某些在IE6顯示異常的一般是把padding換成margin就行了,總之,排版完公司網站是格外的輕鬆。
在文章分頁的時候,碰到了點小問題,看圖
方法/步驟
這是點選下一頁的時候,文章就錯位了,順手就稽核元素(如果做網站你不用谷歌的稽核元素那就真OUT了,火狐的稽核元素太生硬)
是的,只要點選下一頁,文章內容就出現在層外面了,所以,任你折騰破腦袋也是除錯不好這樣式的。一開始我以為是{dede:pagebreak/}放錯地方了,但是其實這標籤是隨便你怎麼放的,都能控制文章翻頁。搞了幾天頭都大了,後來只好不使用分頁了,但是文章那是相當的長.....直到老闆今天說這文章太長了。好吧,看來不得不搞了,又重複的折騰,看著這標籤的時候突然想,會不會是文章裡的div層導致的問題。
一般我們從別的地方複製的文章是先複製到記事本,再複製到DEDE裡面的,如果直接貼上就會把樣式也貼上進來,這顯示是不行的。但是從文本里面複製到DEDE的編輯框之後會發現分段不是用P標籤分段,而是用div層。
文章裡的div層就是這麼來的,但是我們知道,這層是不會影響文章顯示效果的,於是問題就來了,使用{dede:pagebreak/}標籤的時候翻頁之後的文章就會跑到文章層外面去了。後來把原始碼裡面的文字又複製到記事本里面,把div替換成P,再貼上回來就發現文章能正常顯示了。
解決一個問題的感覺真好,話說,我的部落格現在都有好多相容問題,文章下面的標籤顯示到右邊去了,側邊欄的隨便瞄瞄在IE裡面會有問題,只是,這些在已有的程式碼上修改調相容性我真的好鬱悶..
總結:DEDE在使用{dede:pagebreak/}標籤後文章裡面不能有div層
{dede:pagebreak/}這個標籤因為沒有引數可寫,所以,如果文章分頁過多的話,會出現下面的情況
所以,只能去PHP裡面改了,開啟根目錄下include資料夾裡的 arc.archives.class.php 檔案,查詢
for($i=1;$i<=$totalPage;$i++)
把這一句替換成
$total_list=5;
/* 數字5是顯示多少頁連結,根據自己的網站修改 */
if($nowPage >= $total_list) {
$i = $nowPage-2;
/* 數字2是當前連結頁向左顯示2頁連結,自己修改 */
$total_list = $nowPage+2;
/* 數字2是當前連結頁向右顯示2頁連結,自己修改 */
if($total_list >= $totalPage) $total_list = $totalPage;
}else{
$i=1;
if($total_list >= $totalPage) $total_list = $totalPage;
}
for($i;$i<=$total_list;$i++)
再查詢
for($i=1;$i<=$totalPage;$i++)
把這一句替換成
$total_list=5;
/* 數字5是顯示多少頁連結,根據自己的網站修改 */
if($nowPage >= $total_list) {
$i = $nowPage-2;
/* 數字2是當前連結頁向左顯示2頁連結,自己修改 */
$total_list = $nowPage+2;
/* 數字2是當前連結頁向右顯示2頁連結,自己修改 */
if($total_list >= $totalPage) $total_list = $totalPage;
}else{
$i=1;
if($total_list >= $totalPage) $total_list = $totalPage;
}
for($i;$i<=$total_list;$i++)
修改完成後就會這樣顯示
為什麼要修改兩處呢?因為一個是對於靜態頁面一個是對於動態頁的,所以最好是都修改了。
以上,是在DEDE最新版V5.7正式版(2012-11-15)修改有效,低版本好像也是這麼修改沒錯。