2014-12-05 43 views
1

我是一名休閒網站開發人員,所以通常我不熟悉CSS樣式的細節和深度設計。由於我所做的大部分工作都需要PHP,所以我的所有頁面都會執行一些PHP。PHP取代CSS樣式?

我發現自己感覺更舒適的實現PHP包含的類而不是CSS中的設計細節。例如,在每個頁面上我只包含(「header.php」),而不是在一個站點中共同使用一個標題,「header.php」包含一個包含所有樣式定義的類Palette,並聲明樣式直接在元素(我有一個個人過敏,有太多的文件)

到目前爲止,我發現這種方法沒有任何不便,實際上對我來說,在程序語言中實現設計比在聲明中更加明確和靈活(我是C++程序員)。

我在想,如果將來我可能會後悔這個決定,這種方法有什麼問題?

---- ----編輯

讓我展示一個簡單的例子來闡明我的意思(例子中沒有詳細闡述,肯定會得到更好的在生產設計的情況下)

class Palette{ 

    var $colorBackground="#fff"; 
    var $colorText="#000"; 
} 

//------------------------------------- 
function styleInHeader($palette){ 

$css=<<<THECSS 
    .header{ 
     color:{$palette->colorText}; 
     background-color:{$palette->colorBackground}; 
    } 
THECSS; 

return $css; 
} 

// when generating the <head> 

$pal=new Palette(); 
echo style_general($pal); 
  • 優點:類面​​板的定義是在所有網站的獨特
  • 我可以申請一些邏輯對象調色板,例如改變它包含聯合國的顏色一些邏輯甚至用戶交互。
  • 我可以調色板的子類和傳遞這些子類的實例會有靈活性,實際上我會有所有程序員/ obejct導向技術爲造型的advatages。
+0

我會說,這是非常基於意見的..你實際上是通過PHP設計每個單一的元素?當您需要爲一系列元素更改css參數時會發生什麼? – briosheje 2014-12-05 10:25:50

+0

如果您重新設計您的應用程序,該怎麼辦?不得不修改只有css文件似乎比不必深入PHP代碼更容易。 – Raziel 2014-12-05 10:27:00

+4

大多數人對1行文件中的2000行代碼有過敏反應。 – DeathByPenguin 2014-12-05 10:29:59

回答

0

這只是我看買不必通過PHP來STILE每一個元素的方法不僅是艱苦的工作,但沒有必要過了,它會讓你的代碼「X」 -times更長,更難閱讀,什麼如果你不打開一個月的PHP文件,然後你決定改變它的東西?你不會記得每一個參數,你會忘記其中的一些樣式,它會成爲一個永無止境的造型和上傳循環...

另外,爲什麼要寫100個元素100次您可以通過添加一個類來同時針對來自css的所有人?

簡短的回答: 使用CSS樣式表更簡單,更靈活,使您的代碼更具可讀性。

+0

我並不是指用php來設計每個元素的樣式,也許我在第一篇文章中並不清楚,請檢查原始文章的編輯。 – Joan 2014-12-05 12:49:06

+0

好吧,現在唯一剩下的就是隻有你可以在其上工作,其他人不會那麼容易閱讀,但如果它是一個人的項目,我想這對你很好。 – Alin 2014-12-05 13:19:13

4

它可以工作,如果你是一個優秀的程序員,非常謹慎地應用這一點,並知道你在做什麼和爲什麼這樣做。最終,CSS通過與代碼大致相同的方式來解決事情,通過爲共同來源設置標籤併爲它們加載數據。

但是,重新考慮你的方法一個很重要的原因:

你會永遠能夠得到其他人在這個項目上工作,因爲他們會不知道你在做什麼。

但是隻要你接受這是一個人一個人的項目,我可以預見沒有嚴重的問題。

但是,如果你這樣做的目的是爲了製造一些大而專業的東西,這可能需要其他人在未來的某個時候幫助你(或者更糟糕的是,通過某人獲得報酬),那麼我真的會切換到實際使用CSS的項目。

+0

這應該是我標記爲正確的答案 – 2014-12-05 12:41:31

+0

完全同意...除了「從不」,PHP代碼可以很好地設計足以使autoevident什麼是應該做的 – Joan 2014-12-05 12:47:12

+0

無論你設計得多麼好,在最好你讓人們學習一種他們從未見過的全新框架。更有可能的是,你正在尋找相當於學習一種全新的網站編程方式。 – Erik 2014-12-05 12:51:41