上代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<style type="text/css">
<!--
.mainfram{font-size:12px;}
.mainfram span
{
cursor:hand;
color:blue;
}
.afont{font-size:20px; color:blue;}
.bfont{font-size:16px; color:green;}
-->
</style>
</head>
<body id="contentfram">
<div class="mainfram">
<span onclick= "contentfram.className='afont';">大字體</span> |
<span onclick= "contentfram.className='bfont';">小字體</span>
</div>
</body>
</html>
afont和bfont類是已經(jīng)添加成功的, 但是你是加在了body上, 所以樣式是繼承body的, 權(quán)重太低, 使用的是你設(shè)定的樣式, 所以看不出效果.
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<style>
.mainfram {
font-size: 12px;
}
.mainfram span {
cursor: hand;
}
.afont {
font-size: 20px;
color: red;
}
.bfont {
font-size: 16px;
color: green;
}
</style>
</head>
<body id="contentfram">
<div class="mainfram">
<span onclick="this.className='afont';">大字體</span> |
<span onclick="this.className='bfont';">小字體</span>
</div>
</body>
</html>
這樣試試, 這樣加在span上, 友情提示: this關(guān)鍵字在javascript是極其重要, 要重點掌握
本著最小化修改題主代碼的原則,提出2點修改建議:
1、鼠標停留在“大字體”“小字體”并沒有CSS樣式中的hand
cursor:pointer;/*似乎沒有hand 這個值,一直用的是pointer,可能以前有過 hand 這個值*/
MDN 上的解釋:
2、單擊“大字體”“小字體”都無反應(yīng)。
.afont span{font-size:20px; color:blue;}
.bfont span{font-size:16px; color:green;}
.afont,.bfont 后面了加了一個標簽名,讓權(quán)重和上面相等,這樣同等權(quán)重下后面才能覆蓋前面的。能明白?
解釋:css 樣式重復時,覆蓋至少有三條原則,
1、權(quán)重高的覆蓋權(quán)重低的
權(quán)重本身有好幾個等級,大概是:ID選擇器最高(如#contentfram),class 選擇器其次(如.mainfram),標簽選擇器再其次(如span),繼承樣式?jīng)]有權(quán)重(自身沒有設(shè)定樣式,但是因為父元素設(shè)置了,所以繼承了)。
所以原來代碼.mainfram span 權(quán)重 > .afont;導致 .afont 的樣式雖然在后面也不會覆蓋前面的,因為權(quán)重低。如果改成 .bfont span ,二者權(quán)重相等,結(jié)合就近原則,后面的就覆蓋了前面的樣式;
2、就近原則:后面的覆蓋前面的,離 html 近的覆蓋離 html 遠的
3、!important,這個一般不用,詳情自行了解;
建議:如果初學 html ,不建議太關(guān)注 css 樣式,因為 css 也是很繁雜的一部分,如果再和 js 一起學的話,估計會受挫不少,可以嘗試,先學 html,學到覺得可以了,單獨攻 css,再攻 js,一起學容易錯,并且沒有精力去全部搞清楚,特別是 css 和 js 單獨拎出來東西很多,一句兩句講不清楚,容易讓人喪失信心;
css 權(quán)重如果不太理解,可以參考CSS權(quán)威指南-中-第3版,js 放在 html 中的用法很少,屬于歷史遺留,大概了解就行了,一般都不這么寫,所以你會發(fā)現(xiàn)很多答主懷疑你的 js 代碼有問題,實際上不是的。
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學院和江蘇省首批服務(wù)外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網(wǎng)
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務(wù)負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。