html5,css3實戰
預覽地址:預覽
github原始碼:原始碼
1. 網頁開發
HTML5:BEM開發模式,BEM代表塊(Block),元素(Element),修飾符(Modifier)。
CSS3:過渡動畫、幀動畫
JS: 元素獲取,事件響應處理
2. 準備
標註工具:畫素大廚
雪碧圖拼接:gopng
3. 開發
專案骨架:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>手機</title>
<link rel="stylesheet" type="text/css" href="./css/base.css">
<link rel="stylesheet" type="text/css" href="./css/index.css">
</head>
<body>
<div class="box">
<header class="header">
<a href="#" class="header__logo">H5頁面</a>
<nav class="header__nav">
<a href="#" class="header__nav-item header__nav_item_status_active">外觀</a>
<a href="#" class="header__nav-item">配置</a>
<a href="#" class="header__nav-item">型號</a>
<a href="#" class="header__nav-item">說明</a>
<a href="#" class="header__nav-item">其他產品</a>
<a href="#" class="header__nav-item">立即購買</a>
<div class="header__nav-item-tip"></div>
</nav>
</header>
<section class="screen-1"></section>
<section class="screen-2"></section>
<section class="screen-3"></section>
<section class="screen-4"></section>
<footer class="footer">
© index.html 京ICP備13046642號
</footer>
</div>
</body>
</html>
底部邊框2px:(利用偽元素和絕對定位)
.header__nav_item_status_active::after {
position: absolute;
left: 0;
bottom: 0;
content: ' ';
display: block;
height: 2px;
width: 100%;
background-color: #f01400;
}
第一屏:
1. 滾動事件
頁面指定了DTD,即指定了DOCTYPE時,使用document.documentElement。
頁面沒有DTD,即沒指定DOCTYPE時,使用document.body。
相容性寫法:
var scroll = document.body.scrollTop || document.documentElement.scrollTop
而且對於a連結如果不進行跳轉:
<a href="javascript:;"></a>
Javascript:偽協議,可以通過連結來呼叫js函式。
或者:阻止預設事件不跳轉
e.preventDefault();
2. JavaScript自定義新增類的函式
物件:能夠做到不會重複新增
// 新增類名
function addClass(element, newClass) {
var className = element.className.split(' '); //字串轉換成陣列,便於遍歷轉換成物件
var classNameMap = {}
for(var i=0;i<className.length;i++){
classNameMap[className[i]] = 1;
}
classNameMap[newClass] = 1; //新類名賦值
var className = [];
for(i in classNameMap){
className.push(i);
}
element.className = className.join(' '); //陣列轉換成字串
}
相關文章
- 《HTML5與CSS3實戰指南》——1.5我們為什麼應關注CSS3HTMLCSSS3
- 《HTML5與CSS3實戰指南》——1.3我們為什麼應關注HTML5HTMLCSSS3
- 《HTML5與CSS3實戰指南》——2.4定義頁面結構HTMLCSSS3
- 《響應式Web設計——html5和css3實戰》讀書筆記WebHTMLCSSS3筆記
- HTML5 的 CSS3 Media Queries 實踐HTMLCSSS3
- 實踐 HTML5 的 CSS3 Media QueriesHTMLCSSS3
- html5錄音功能實戰HTML
- HTML5和CSS3提高HTMLCSSS3
- Html5,css3選單HTMLCSSS3
- html5/css3新增屬性HTMLCSSS3
- HTML5 & CSS3初學者指南(3) – HTML5新特性HTMLCSSS3
- HTML5 Canvas製作雷達圖實戰HTMLCanvas
- HTML5,CSS3,學習筆記HTMLCSSS3筆記
- 不要痴迷於HTML5 和 CSS3HTMLCSSS3
- HTML5視訊教程,HTML5專案實戰,HTML5中文指南,HTML5使用手冊HTML
- web前端入門到實戰:css3 實現大轉盤Web前端CSSS3
- HTML5拍照、攝像機功能實戰HTML
- HTML5 Canvas(實戰:繪製餅圖2 Tooltip)HTMLCanvas
- 圖解css3:核心技術與案例實戰.3.1 CSS3邊框簡介圖解CSSS3
- CSS3 和 HTML5 新特性一覽CSSS3HTML
- 3個CSS3和HTML5新框架CSSS3HTML框架
- CSS3/HTML5實現漂亮的分步驟註冊登入表單CSSS3HTML
- 2018最新HTML5實戰 共33節HTML
- HTML5與CSS3知識點總結HTMLCSSS3
- HTML5 & CSS3 初學者指南(4) – Canvas使用HTMLCSSS3Canvas
- 讓你心動的 HTML5 & CSS3 效果HTMLCSSS3
- 22個HTML5和CSS3表單教程HTMLCSSS3
- HTML5 和 CSS3的新互動特性HTMLCSSS3
- 9款大氣實用的HTML5/CSS3註冊登入表單HTMLCSSS3
- HTML5 canvas遊戲開發實戰 5 : 石頭剪刀布HTMLCanvas遊戲開發
- 玩轉HTML5應用實戰:靈活拖拉檔案HTML
- 25個幫助你提高技能的 CSS3 實戰教程CSSS3
- 6個最好的 HTML5/CSS3 演示(PPT)框架HTMLCSSS3框架
- Html5 css3學習--2D變形HTMLCSSS3
- HTML5中CSS3的屬性選擇器HTMLCSSS3
- HTML5和CSS3中的互動新特性HTMLCSSS3
- 《響應式Web設計:HTML5和CSS3實踐指南》——2.1節簡介WebHTMLCSSS3
- 尚矽谷前端HTML5視訊_微信小程式專案實戰前端HTML微信小程式