XHTML與CSS的物件導向編程

來源:互聯網
上載者:User

要是XHTML與CSS能物件導向。。太陽應該從北邊升起了。但是,凡事都應該帶著OO的思想來看問題,也勉強可以湊數拉。其實,早在零幾年就有人提出了OO-style,不過已找不到。 網頁教學網

那要怎樣OO呢?現在大家都知道CSS是可以介樣寫滴:

網頁教學網

.G_G { /* xxxxxx */ } 我們可以把它大約看一個原型,或者說成類,-__-b 好像本來就是類的樣子,然後要在HTML裡“執行個體化”一個對象,例如:

<div class="G_G">笨蛋嗷嗷</div>  該元素會使用上CSS相應的定義,但僅僅對應的class還是不夠的,因為我們頁面可能會多處應用到這個class,為了處理好“私人”的關係,把剛才的代碼改成:


<div id="aoao" class="G_G">笨蛋嗷嗷</div> 網頁教學網 這樣的話,這個ID為aoao的元素就會應用
.G_G
這個類的定義,而且可以用
#aoao{}
這樣的選擇符來進去私人效果的定義,這樣也不會影響到公用用的
.G_G
這個類,同時,#aoao定義的優先權會比.G_G高,符合私人定義比公用定義優先高的常理^^。


由於我使用了ID這個具有唯一性的東東,對這種私人定義後的東西複用就成了問題(一個ID只能在一個頁面上出現一次,不知道誰說的,反正是真理)。如果我們要實現多相同私人化的東東怎辦呢?那我們就必須來實現“多態”。挖哈哈。再改一下代碼: 網頁教學網

<div class="G_G o_O">笨蛋嗷嗷</div>  一個是“G_G”,另一個是“o_O”,但是我們如果使用上
.o_O{}
也是可以定義到元素,假如CSS是這樣的話:

 

.G_G {width:100%}
.o_O {color:#123456}  元素將都被定義到,而且由於定義不層疊,都會給應用。再假如代碼是這樣的話,不知道會不會更好理解。

<div class="layout color">不是笨蛋嗷嗷鳥</div> 網頁教學網 .layout{width:100%}
.color{color:#123456} 接著,要來實現“封裝”。子級選擇符大家應該常常用吧,換代碼:

<div class="G_G"><span class="bendan">笨蛋</span>嗷嗷</div> 網頁教學網 雖然
.bendan{}

.G_G .bendan{}
都可以定義,但是後者只能應用在class為“G_G”的元素,我們可以簡單把
.bendan{}
理解成全域定義,把
.G_G .bendan{}
理解成局部定義,這樣的話就有利於我們XHTML與CSS的模組化。^^傳說中的“封裝”出現了,再接著。

<div id="aoao" class="G_G o_O"><span class="bendan">笨蛋</span>嗷嗷</div> 這樣的代碼就可以產生無數的變化了,還不明白的從頭看起。^^


其實,這些跟真正的物件導向還有很大一段距離,我只是在學標題黨,不過可以用它來理解ID與class的應用。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.