CSS Reset 详细分析_html/css_WEB-ITnose
最近在看nodejs,《Node.js实战》这本书果然不错,按照步骤来,还是蛮容易上手的,我不是打广告。。
我是前端出身,所以搞着搞着就开始想前端的东西。。果然裸写css现在已经变成一件十分蛋疼的事情,所以琢么着如果不用baidu的fis,我自个儿加less什么的,之后就想到,最好还是搭建一个common.less,里面可以放好多mixin什么的,这样也可以为以后的工作先少点重复劳动,看了下我师父写的架子,没想到网上有一个写的不错的reset,这里引用过来,原文请看这里。
HTML5 新模块元素的兼容问题
新增块元素的默认样式
下列HTML5新模块元素在IE8、9版本浏览器中没有被定义默认样式。为解决该问题,给下列元素添加“block”显示属性。
代码:
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
特殊新增块元素
下列HTML5新模块元素在IE8、9版本浏览器中没有被定义默认样式,考虑到其特殊性,特为下列元素添加“inline-block”显示属性。
代码:
audio,canvas,video { display:inline-block; *display:inline; *zoom:1;}
去除行内块元素之间的水平空隙方案
代码:
.display { inline-block; /* 此处原用于解决IE7兼容性问题,但是会导致background-image失效,请先忽略以下两条,实践中暂时没有发现IE7解决办法。若有发现请在留言处补充。谢谢! */ /* *display:inline; */ /* *zoom:1; */}
代码:
audio:not([controls]) { display: none; /*为防止在主流浏览器中出现“不带控制按钮的音频模块”这一问题。*/ height: 0; /*解决iOS5移动端显示多余高度的兼容性问题。 */ }
特殊模块样式处理
处理 不存在于 IE 8/9 的样式。
代码:
[hidden]{ display:none;}
很多新增的HTML模块元素在搜索优化上也起到不可轻视的作用。
代码:
address { /* 屏幕阅读器和搜索引擎找到地址或电话号码,默认样式是 display: block */ display: block;}<address> <p>address:detail</p> <p> <a href="tel:+12233444">1223334444</a> </p> <p> <a href="mailto:address@mail.com">address@mail.com</a> /* 亦可标记电子邮件地址 */ </p></address>
Global 全局基本设置
代码:
html { font-family: sans-serif; /* 默认字体 */ font-size: 100%; /* 在用户调整窗口大小时,字体大小做相应调整。 */ -ms-text-size-adjust: 100%; /* IE浏览器 */ -webkit-text-size-adjust: 100%; /* FireFox浏览器 */ overflow-y: auto;}
代码:
body{ margin: 0; /* 外边距 */ padding: 0; /* 内边距 */ border: 0; /* 边框 */}
代码:
a { text-decoration: none; /* 去除默认下划线 */}a:focus { outline:thin dotted; /* 处理“outline”在Chrome浏览器中和其它浏览器之间的不一致 */}a:active, a:hover { outline: 0;}
代码:
h1 { /* 使h1标签在section标签和article标签的留白和字体样式统一。可同时兼容Firefox 4+、Safari 5和Chrome等不同的浏览器 */ font-size: 2em; margin: 0.67em 0;}abbr[title] { border-bottom: 1px dotted; /* 解决首字母样式在IE8/9、Safari 5和chrome浏览器中未定义的问题 */}b,strong { font-weight: bold; /* 添加加粗样式,应用于Firefox 4+、Safari 5和Chrome */}dfn { font-size:italic; /* 添加斜体样式,应用于Safari 5和chrome */}hr { /* 解决其在Firefox中的兼容性问题 */ -moz-box-sizing: content-box; box-sizing: content-box; height: 0;}mark { /* 解决其在IE8/9中样式未定义的问题 */ background: #ff0; color: #000;}code,kbd,pre,samp { /* 更正关联字体在Safari 5和Chrome中的老式设置 */ font-family: monospace, serif; font-size: 1em;}pre { /* 提高pre标签格式化文本在所有浏览器中的可读性 */ white-space: pre-wrap;}q { /* 设置相一致的引号类型 */ quotes: "\201C" "\201D" "\2018" "\2019";}q:before, q:after, blockquote:before, blockquote:after { content: ""; }small { /* 统一所有浏览器中字体大小不一致的兼容性问题 */ font-size: 80%;}sub, sup { /* 在所有浏览器中,防止“sub”和“sup”标签影响“line-height”属性 */ font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}sup { top: -0.5em;}sub { bottom: -0.25em;}small { font-size: 85%;}strong { font-weight: bold;}em { font-style: italic;}cite { font-style: normal;}ul,ol { padding: 0; margin: 0 0 10px 25px;}dl { margin-bottom: 20px;}li { line-height: 20px;}dt,dd { line-height: 20px;}dt { font-weight: b d;}dd { margin-left: 10px;}
* 内嵌文本相关样式
代码:
img { border: 0; /* 在IE8/9浏览器中,当img标签中包含a标签时,去除img边框属性。 */}svg:not(:root) { overflow: hidden;}
图片特写相关样式
"figure"标签规定独立的流内容(图像、图表、照片、代码等等)
代码:
figure { margin: 0;}
表单相关样式
代码:
fieldset { /* 定义一致的边框、内边距和外边距 */ border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em;}legend { border: 0; /* 更改“color”属性在IE8/9浏览器中没有被继承的问题 */ padding: 0; /* 去除外边距,如此即使人们将字段集归零也不会失去样式 */ }button,input,select,textarea { font-family: inherit; /* 更改关联字体属性在IE8/9浏览器中没有被继承的问题 */ font-size: 100%; /* 更改字体大小属性在IE8/9浏览器中没有被继承的问题 */ margin: 0; /* 调整边距设置在Firefox 4+, Safari 5, 和 Chrome浏览器中的兼容性问题 */}button,input { line-height: normal; /* 调整Firefox 4+浏览器下,客户端样式表中设置了“!important”的“line-height”属性的input表单 */}button,select { text-transform: none; /** * 调整“button”和“select”的“text-transform”继承不一致性的问题 * 其他表单控件元素不继承“text-transform”属性 * 修正“button”标签在Chrome, Safari 5+, and IE 8+中的样式继承问题 * 修正“select”标签在Firefox 4+ 和Opera中的样式继承问题 */ }button,html input[type="button"], /* 避免webKit bug发生在Android 4.0.* 设备上,破坏原生“audio”和“video”控制组件 */input[type="reset"],input[type="submit"] { -webkit-appearance: button; /* 改正iOS设备中“input”类型表单样式不可用的问题 */ cursor: pointer; /* 增强光标样式在input表单和其他表单的可用性和一致性 */}button[disabled],html input[disabled] { cursor: default; /* 为禁用表单重设定默认光标样式 */}input[type="checkbox"],input[type="radio"] { box-sizing: border-box; /* 调整IE 8/9中尺寸属性设置为“内容框”的盒子模型 */ padding: 0; /* 去除IE 8/9中的多余的外边距留白部分 */}input[type="search"] { -webkit-appearance: textfield; /* 兼容Safari 5 and Chrome上 “searchfield” 上设置 “appearance”属性 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 兼容Safari 5 and Chrome上 “border-box” 上设置 “box-sizing”属性 */ box-sizing: content-box;}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; /* 去除OS X系统上Safari 5和Chrome中容器内边距和搜索取消按钮属性 */}button::-moz-focus-inner,input::-moz-focus-inner { //Firefox 4+浏览器中,去除容器内边距和边框属性 border: 0; padding: 0;}textarea { overflow: auto; /* IE 8/9中,去除默认垂直滚动条属性 */ vertical-align: top; /* 提高所有浏览器中的文本可读性和版式 */} table { /* 删除表格单元格之间的间距。 */ border-collapse: collapse; border-spacing: 0;}
Clearfix 可选全局样式
可兼容IE 6/7浏览器
代码:
.clearfix { *zoom:1}.clearfix:before,.clearfix:after { display:table; line-height:0; content:""}.clearfix:after { clear:both}*html .clearfix { zoom: 1;} /* IE6 */*:first-child+html .clearfix { zoom: 1;} /* IE7 */
Summary 小结
综述,虽说是Reset文件,但是每个网站的需求是不尽相同的,请按照自己项目的需求作个性化调整。以上仅作兼容性解决方案及主流reset.css编写方案参考,整理自global.css、reset.less、normalize.css及bootstrap网站。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HTML은 간단하고 배우기 쉽고 결과를 빠르게 볼 수 있기 때문에 초보자에게 적합합니다. 1) HTML의 학습 곡선은 매끄럽고 시작하기 쉽습니다. 2) 기본 태그를 마스터하여 웹 페이지를 만들기 시작하십시오. 3) 유연성이 높고 CSS 및 JavaScript와 함께 사용할 수 있습니다. 4) 풍부한 학습 리소스와 현대 도구는 학습 과정을 지원합니다.

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

anexampleStartingtaginhtmlis, whithbeginsaparagraph.startingtagsareessentialinhtmlastheyinitiate rements, definetheirtypes, andarecrucialforstructurituringwebpages 및 smanstlingthedom.

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...

웹 주석 기능에 대한 Y 축 위치 적응 알고리즘이 기사는 Word 문서와 유사한 주석 기능을 구현하는 방법, 특히 주석 간격을 다루는 방법을 모색합니다 ...

HTML, CSS 및 JavaScript는 웹 개발의 세 가지 기둥입니다. 1. HTML은 웹 페이지 구조를 정의하고 등과 같은 태그를 사용합니다. 2. CSS는 색상, 글꼴 크기 등과 같은 선택기 및 속성을 사용하여 웹 페이지 스타일을 제어합니다.

이미지를 클릭 한 후 주변 이미지를 산란 및 확대하는 효과를 얻으려면 많은 웹 디자인이 대화식 효과를 달성해야합니다. 특정 이미지를 클릭하여 주변을 만들 수 있습니다 ...
