新聞中心
織夢DEDE發(fā)布文章時(含附件圖片)過大導(dǎo)致首頁布局混亂的解決方案
織夢dedesms是一款開源的企業(yè)站程序,很多做企業(yè)站,展示站的站長朋友們都會首選dedecms,這款程序前臺和后臺開發(fā)的都是比較完美的,功能也很齊全,今天小編遇到了一個奇葩的問題,一位站長朋友就是用這款dedecms建站的,他的站點主要是用來發(fā)布文章,做宣傳的。但是由于文章里含有很多附件或者比較大的圖片,在后臺發(fā)布更新后,當(dāng)在網(wǎng)站前臺刷新后看到整個首頁的布局都混亂了,由于個人解決不了,他來咨詢小編,小編以前遇到過了因此已經(jīng)知道了解決的方法,一般在網(wǎng)站發(fā)布一篇文章含有大的圖片的時候,圖片的寬度和高度就會超過了內(nèi)容區(qū)域大小,圖片就會把表格撐的很大,頁面布局當(dāng)然會亂了。小編今天把這個設(shè)置的方法記錄下來吧以后也許還是會有站長遇到相同的問題的。 第一步:找到include/arc.archives.class.php 文件并用一款編輯軟件打開。 首先找到以下代碼: //設(shè)置全局環(huán)境變量 $this->Fields['typename'] = $this->TypeLink->TypeInfos['typename']; @SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['id'],$this->Fields['title'],'archives'); 在這段代碼下加入以下代碼: //替換圖片Alt為文檔標(biāo)題 $this->Fields['body']=str_ireplace(array('alt=""','alt=\'\''),'',$this->Fields['body']); $this->Fields['body']=preg_replace("@[\s]{0,}alt[\s]{0,}=[\"'\s]{0,}[\s\S]{0,}[\"'\s]@isU"," ",$this->Fields['body']); $this->Fields['body']=str_ireplace("<img","<imgalt=\"".$this->Fields['title']."\"",$this->Fields['body']); //img標(biāo)簽中加入超寬縮小JS調(diào)用代碼 $suolue='onload="javascript:ImgReSize(this)"'; $this->Fields['body']=str_ireplace("<img","<img".$suolue."",$this->Fields['body']); //屏蔽height屬性 $this->Fields['body']=preg_replace('/<img(.+?)height=(.+?) (.+?)>/i',"<img$1$3>",$this->Fields['body']); 第二步:我們找到文章前臺頁模板/templets/default/article_article.htm打開模板文件然后在最下面添加以下代碼: <script language='javascript'> function ImgReSize(e) { if(e.width>670) // 670可根據(jù)你文章的內(nèi)容區(qū)域大小,可調(diào)整 { e.width=670; // 等同上面你設(shè)的那個數(shù)值 e.style.width=""; } if(e.height>10) { e.style.height=""; } } </script> 這段代碼主要是修改網(wǎng)頁的寬度的,以上有個數(shù)字是670就是控制寬度大小的參數(shù),一般寬度修改后高度就會自動縮小的了。以上兩個步驟就是完美解決由于圖片大導(dǎo)致網(wǎng)站格式混亂的方案。當(dāng)然如果是前臺高手也是可以用CSS樣式來調(diào)試的。但是小編還要提醒一句,CSS對每個不同的瀏覽器都存在兼容性的問題,舉個例子對IE瀏覽器就是不兼容的哦。 無憂主機(jī)相關(guān)文章推薦閱讀: DEDECMS去掉管理員后臺廣告界面方法 DEDECMS程序網(wǎng)站如何添加GOOGLE地圖 如何修改DEDECMS網(wǎng)站程序后臺首頁頭部LOGO圖片 DEDECMS模板調(diào)用文件出錯導(dǎo)致首頁白屏、頁面混亂解決方案總結(jié)篇
本文地址:http://www.gle-technology.com/dedecms/14725.html