CSS Normalize文件配置示例

作為前端工程師,很多人都有自己的一套CSS Normalize文件,這樣能省掉開發(fā)過程中的不少麻煩,提高工作效率。在前人的基礎(chǔ)上,我總結(jié)了自己的CSS Normalize文件,目前基本上每個(gè)項(xiàng)目都有在使用中:
- /*Normalize*/
- *{margin:0;padding:0;list-style-type:none;}
- *html,*html body /* 修正IE6振動(dòng)bug */{
- background-image:url(about:blank);
- background-attachment:fixed;
- }
- body{
- font-family:"Microsoft Yahei","Hiragino Sans GB" ,Arial,Lucida,Verdana,SimSun,Helvetica,sans-serif;
- /*font-size : 62.5%; px數(shù)值除以10,然后換上em作為單位*/
- /*min-width:980px;*/
- font-size:13px;
- }
- a,img{border:none;text-decoration:none;}
- a{blr:expression(this.onFocus=this.blur());} /*去掉a標(biāo)簽的虛線框,避免出現(xiàn)奇怪的選中區(qū)域*/
- /*a:active {test:expression(target="_blank");}*/
- :focus{outline:0;}
- label{cursor:pointer;}
- img{vertical-align:middle;}
- table{empty-cells:show;border-collapse:collapse;border-spacing:0;}
- h1{font-size:1.6em;}h2,h3,h4{font-size:1.4em;}h5,h6{font-size:1.2em;}
- input{border:none;}
- textarea{overflow:scroll;}
- a, input,textarea, .hover-delay {
- font-family:"Microsoft Yahei","Hiragino Sans GB", Arial,Lucida,Verdana,SimSun,Helvetica,sans-serif;
- -webkit-transition: all 0.3s ease-out;
- -moz-transition: all 0.3s ease-out;
- -ms-transition: all 0.3s ease-out;
- -o-transition: all 0.3s ease-out;
- transition: all 0.3s ease-out;
- }
- input.none-radius{
- border-radius:0;
- -moz-border-radius:0;
- -webkit-border-radius:0;
- }
- input::-ms-clear{ display:none;} //去掉輸入框的叉叉
- .clear{clear:both;}
- .txt-indent{text-indent:-999px;overflow:hidden;}
- input[type=text],input[type=tel],input[type=email]{
- -webkit-appearance: none;
- box-shadow: none;}
- /*Normalize end*/
對(duì)與我的實(shí)際使用中,我有一個(gè)Template文件夾(最近新增了一個(gè)針對(duì)Mobile)
里面的文件夾大致分為如下:
1)images: 存放項(xiàng)目中的圖片(里面又會(huì)根據(jù)項(xiàng)目模塊進(jìn)行文件夾劃分)
2)css: 存放css文件(里面會(huì)有一個(gè)base.css文件,預(yù)置上文中的css normalize)
3)js:存放js文件,里面還有一個(gè)vender的文件夾,存放插件js(例如:jQuery庫),外面有main.js(主要js文件),plugins.js(插件引用的js)
根目錄下,為index.html文件
主要為如下文件:
- <!doctype html>
- <!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
- <!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
- <!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
- <!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
- <head lang="zh-CN">
- <meta charset="utf-8" />
- <meta http-equiv="X-UA-Compatible" content="IE=edge" />
- <title>xxx</title>
- <meta name="keywords" content="xxx" />
- <meta name="description" content="xxx" />
- <link rel="shortcut icon" href="images/favicon.ico" /> <!-- IE address前ico圖標(biāo) -->
- <link rel="stylesheet" href="css/normalize.css" /> <!-- reset style -->
- <link rel="stylesheet" href="css/base.css" /> <!-- basic style -->
- <script src="js/vendor/jquery-1.10.2.min.js"></script> <!-- jQuery library -->
- <script src="js/vendor/jquery-ui-1.11.1.js"></script> <!-- jQuery UI library -->
- <script src="js/main.js"></script> <!-- main js -->
- <script src="js/plugins.js"></script> <!-- plugins -->
- <!--[if (gte IE 6)&(lte IE 8)]>
- <script type="text/javascript" src="js/vendor/selectivizr.js"></script>
- <noscript><link rel="stylesheet" href="[fallback css]" /></noscript>
- <![endif]--> <!--/*修正CSS3在IE6-8*/-->
- <!--[if lt IE 9]>
- <script src="js/html5.js"></script>
- <![endif]-->
- </head>
- <body>
- <!--wrapper-->
- <div class="wrapper">
- <!--header-->
- <div class="header">
- <!--logo-->
- <div class="logo"></div>
- <!--logo end-->
- <!--navigation-->
- <div class="nav">
- </div>
- <!--navigation end-->
- <!--banner-->
- <div class="banner">
- </div>
- <!--banner-->
- </div>
- <!--header end-->
- <!--container-->
- <div class="container">
- <!--news-->
- <div class="news">
- </div>
- <!--news end-->
- <!--sidebar banner-->
- <div class="sidebar">
- </div>
- <!--sidebar banner end-->
- <!--hot top9-->
- <div class="hot">
- </div>
- <!--hot top9-->
- </div>
- <!--container end-->
- <!--footer-->
- <div class="footer">
- <!--about us-->
- <div class="about-us"></div>
- <!--webchat-->
- <div class="webchat"></div>
- <!--copyright-->
- <div class="copyright"></div>
- </div>
- <!--footer end-->
- </div>
- <!--wrapper end-->
- </body>
- </html>
Mobile下的head會(huì)有如下meta設(shè)置:
- <meta name="viewport" id="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
- <meta name="apple-mobile-web-app-capable" content="yes" />
- <meta name="apple-touch-fullscreen" content="yes" />
- <meta name="apple-mobile-web-app-status-bar-style" content="black" />
值得一提的是,在github上也有做了一個(gè) normalize.css 文件,我在做HTML5項(xiàng)目也將其應(yīng)用在normalize中。 鏈接如下:
https://github.com/necolas/normalize.css
另外,對(duì)于很多開發(fā)中來說,Template文件同樣是節(jié)省了不少寫重復(fù)代碼的時(shí)間,同時(shí),又規(guī)范了自己的書寫習(xí)慣。
下面這個(gè),我覺得非常詳細(xì)了,當(dāng)然有些不必要的東西,可以自己取舍。
https://github.com/h5bp/html5-boilerplate
相關(guān)文章
- CSS Grid 是一種二維布局系統(tǒng),可以同時(shí)控制行和列,相比 Flex(一維布局),更適合用在整體頁面布局或復(fù)雜模塊結(jié)構(gòu)中,這篇文章主要介紹了前端CSS Grid 布局詳解,需要的朋2025-04-16
CSS Padding 和 Margin 區(qū)別全解析
CSS 中的 padding 和 margin 是兩個(gè)非常基礎(chǔ)且重要的屬性,它們用于控制元素周圍的空白區(qū)域,本文將詳細(xì)介紹 padding 和 margin 的概念、區(qū)別以及如何在實(shí)際項(xiàng)目中使用它們2025-04-07- will-change 是一個(gè) CSS 屬性,用于告訴瀏覽器某個(gè)元素在未來可能會(huì)發(fā)生哪些變化,本文給大家介紹CSS will-change 屬性詳解,感興趣的朋友一起看看吧2025-04-07
- 本文給大家分享在 CSS 中,去除a標(biāo)簽(超鏈接)的下劃線的幾種方法,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-04-07
- 在前端開發(fā)中,CSS(層疊樣式表)不僅是用來控制網(wǎng)頁的外觀和布局,更是實(shí)現(xiàn)復(fù)雜交互和動(dòng)態(tài)效果的關(guān)鍵技術(shù)之一,隨著前端技術(shù)的不斷發(fā)展,CSS的用法也日益豐富和高級(jí),本文將2025-04-07
css中的 vertical-align與line-height作用詳解
文章詳細(xì)介紹了CSS中的`vertical-align`和`line-height`屬性,包括它們的作用、適用元素、屬性值、常見使用場(chǎng)景、常見問題及解決方案,感興趣的朋友跟隨小編一起看看吧2025-03-26淺析CSS 中z - index屬性的作用及在什么情況下會(huì)失效
z-index屬性用于控制元素的堆疊順序,值越大,元素越顯示在上層,它需要元素具有定位屬性(如relative、absolute、fixed或sticky),本文給大家介紹CSS 中z - index屬性的作用2025-03-21- 文章詳細(xì)介紹了CSS中的打印媒體查詢@mediaprint包括基本語法、常見使用場(chǎng)景和代碼示例,如隱藏非必要元素、調(diào)整字體和顏色、處理鏈接的URL顯示、分頁控制、調(diào)整邊距和背景等2025-03-18
CSS模擬 html 的 title 屬性(鼠標(biāo)懸浮顯示提示文字效果)
本文介紹了如何使用CSS模擬HTML的title屬性,通過鼠標(biāo)懸浮顯示提示文字效果,通過設(shè)置`.tipBox`和`.tipBox.tipContent`的樣式,實(shí)現(xiàn)了提示內(nèi)容的隱藏和顯示,感興趣的朋友一起2025-03-10前端 CSS 動(dòng)態(tài)設(shè)置樣式::class、:style 等技巧(推薦)
本文介紹了Vue.js中動(dòng)態(tài)綁定類名和內(nèi)聯(lián)樣式的兩種方法:對(duì)象語法和數(shù)組語法,通過對(duì)象語法,可以根據(jù)條件動(dòng)態(tài)切換類名或樣式;通過數(shù)組語法,可以同時(shí)綁定多個(gè)類名或樣式,此外2025-02-26