我将利用三天的时间来完成制作京东首页的静态页面效果,其中包含的内容有html以及css。

1、在开发进行之前,首先要配置开发环境:我们需要安装sublime  webstorm  vscode  Hbuilder  atom等开发软件,选择其一即可。我所使用的是webstorm。

2、在主文件夹中建立相关的项目文件夹 :为了将与项目相关的文件放在一块,便于管理和以后的维护。

其中:包括与项目相关的一些文件

主页或是首页    index.html   default.html

Css文件夹    css文件的

Base.css     global.css

Images文件夹  用来放置网站中的所有的图片

Js文件

音频或是视频文件

3、在这之后我们要进行样式初始化,一般所有网站开发之前都会进行样式初始化,例如淘宝、京东这样的大网站,都有自己的样式初始化css文件。如:

html, body, ul, li, ol, dl, dd, dt, p, h1, h2, h3, h4, h5, h6, form, fieldset, legend, img {
    margin: 0;
    padding: 0;
}

fieldset, img, input, button {
    border: none;
    padding: 0;
    margin: 0;
    outline-style: none;
}

ul, ol {
    list-style: none;
}

/*去掉原样式中的小黑点*/
input {
    padding-top: 0;
    padding-bottom: 0;
    font-family: "SimSun", "宋体";
}

select, input {
    vertical-align: middle;
}

/*输入字居中显示*/
select, input, textarea {
    font-size: 12px;
    margin: 0;
}

/**/
textarea {
    resize: none;
}

/*防止拖动*/
img {
    border: 0;
    vertical-align: middle; /*  去掉图片底部默认的3像素空白缝隙*/
}

table {
    border-collapse: collapse; /*合并外连线*/
}

body {
    font: 12px/150% Arial, Verdana, "\5b8b\4f53"; /*unitedCode的写法,宋体的写法*/
    color: #666; /*150%基于当前字体尺寸的百分比行间距*/
    background: #fff;
}

.clearfix:before, .clearfix:after {
    /*清除浮动,最好最标准的写法*/
    content: "";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1; /*IE/7/6*/  /*兼容IE6下的写法*/
}

a {
    color: #666;
    text-decoration: none;
}

a:hover {
    color: #C81623;
}

h1, h2, h3, h4, h5, h6 {
    text-decoration: none;
    font-weight: normal;
    font-size: 100%;
}

s, i, em {
    font-style: normal;
    text-decoration: none;
}

.col-red {
    color: #C81623 !important;/*京东主色调*/
}

/*公共类*/
.w {
    /*版心 提取 */
    width: 1210px;
    margin: 0 auto;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

.al {
    text-align: left;
}

.ac {
    text-align: center;
}

.ar {
    text-align: right;
}

.hide {
    display: none;
}

这样可以方便开发人员对各个标签的样式的初始化以及公共类的重用。

4、分析网站结构

做网站的时候也有一个规范或是通例

布局的顺序一般是从上到下,从左到右

在写页面的时候,一般考虑使用标准流的元素,其次才使用浮动或是定位。

就在标准流元素当中,宽高是最稳定的,其实才使用padding,最后或者可以使用margin.

我们网站结构中的任何标签 都可以看成是一个盒模型,都可以设置宽高,只是有的元素设置了宽高之后,不起作用。

要想让行内元素的宽高起作用:

1. 将行内元素转换成块级元素或是行内块元素

2. 浮动   脱标

3. 定位   脱标

在布局行内块元素时,行内块元素之间有默认的几像素的间距。这几像素的间距只能用浮动来清除。

定位有四种:

Fixed    absolute    relative   static

一般我们在分析网站结构时,使用火狐浏览器可以将这个网页截图之后保存下来:

然后我们可以使用fireworks来提取网站中的具体内容的宽高、颜色等。

Fw的常用快捷键:

I      滴管工具   吸取颜色

K     切片工具    量取元素的宽度

Z   放大镜工具

V     移动

A     指针工具

常用的复合属性:

Background

mso-char-indent-count:3.4900;">浮动的原因就是因为父盒子没有高度,原来的高度是靠标准流中的子元素撑起来,但是子元素浮动了之后 ,脱离标准流了,造成父级元素的高度为0;

  1. 给父盒子设置一个高度
  2. Clear: both
  3. Overflow: hidden   触发了BFC模式 也可以用来清除浮动
  4. 伪元素或是双伪元素清除法

.clearfix:before, .clearfix:after {
    /*清除浮动,最好最标准的写法*/
    content: "";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1; /*IE/7/6*/  /*兼容IE6下的写法*/
}

(一般常用伪元素的方法来清除浮动)

定位元素的层级问题:

如果只给一个元素绝对定位,而不写trbl值的话,会以原位显示

定位(相对和绝对或固定)的元素都有一个层级的属性或是概念。如果定位了的相邻多个元素,在同一个位置的话,后面的元素默认会压住前面的元素。如果同样是定位了的元素,默认他们的层级都是0,只不过后面的元素会压住前面的元素。如果想让当前的元素显示在后面的元素之上,这个时候就需要改变层级的关系,用z-index来改变。

z-index的取值范围0---9999999,最好是正数,尽量不要用负数。

另外要注意,position:relative依旧会占据标准流中的位置,会导致其他内容无法在其层级上显示。

透明度opacity

Opacity:有兼容性问题,而且不但让背景颜色透明,而且还让里面的内容也透明

background: rgba(0,0,0,.3);

仅让背景色透明,内容不透明

相邻元素的层级问题

淘宝网页中鼠标移入后边框闪现效果

<style>
        * {
            margin: 0;
            padding: 0;
        }
        div {
            width: 200px;
            height: 500px;
            border: 10px solid blue;
            float: left;
            /*margin-right: 10px;*/
            margin-left: -10px;
            position: relative; /*定位了的元素,默认的都会有层级的概念,而且默认的层级都是0*/
        }
        div:hover {
            border-color: red;
            position: relative;
            z-index: 1;
        }
    </style>
</head>
<body>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</body>

这样就可以通过相邻元素的层级问题,用hover伪元素来控制边框的颜色以及其他属性,达到淘宝那样的效果。

简单html以及css的用法的更多相关文章

  1. 牢记 31 种 CSS 选择器用法

    原文 The 30 CSS Selectors you Must Memorize 由 Jeffrey Way 发表于 2011 年 6 月,介绍了 30 种最常用的 CSS 选择器用法,多加了一种, ...

  2. 网页重构应该避免的10大 CSS 糟糕用法

    对于网页重构来说,CSS禅意花园 是网页布局从 table 表格转到了 html +css 的标志 .这些年来,随着我们的网站越来越复杂:html5,css3,新的技术.新的属性,越来越多的开发者开始 ...

  3. CSS3基础——笔记+实战案例(CSS基本用法、CSS层叠性、CSS继承性)

    CSS3基础——笔记 CSS是Cascading Style Sheet的缩写,翻译为"层叠样式表" 或 "级联样式表".CSS定义如何显示HTML的标签央视, ...

  4. 网页重构应该避免的10大CSS糟糕用法

    对于网页重构来说,CSS禅意花园 是网页布局从 table 表格转到了 html +css 的标志 .这些年来,随着我们的网站越来越复杂:html5,css3,新的技术.新的属性,越来越多的开发者开始 ...

  5. css奇特用法之 IMG添加背景图片配合显示--效果惊艳

    IMG标签本身是显示图片的,但通过CSS可以再为其设置背景图片,让其和自身的图片配合来显示,最终的效果会让你惊叹.当然,这个发现来自于老外,所以代码马上与大家分享.再此之前,我也从来没有想到过这个思路 ...

  6. Css相关用法个人总结

    Css相关用法个人总结

  7. css !important用法以及CSS样式使用优先级判断

    之前一直看到很多css中都有!important这个样式,一直不知道有什么作用的,今天在网上详细了解了一下,看了别人的博客,顺便转载收藏一下 css !important用法CSS样式使用优先级判断 ...

  8. 跨平台移动开发 Xuijs超轻量级的框架Style CSS属性用法

    PhoneGap里面推荐使用的超轻量级的框架 Style CSS属性用法 设置css属性:setstyle 通过ID设置css属性 x$('#top1').setStyle('color', '#DB ...

  9. python简单的函数定义和用法实例

    python简单的函数定义和用法实例 这篇文章主要介绍了python简单的函数定义和用法,实例分析了Python自定义函数及其使用方法,具有一定参考借鉴价值,需要的朋友可以参考下 具体分析如下: 这里 ...

随机推荐

  1. 关于Verilog 中的for语句的探讨

    在C语言中,经常用到for循环语句,但在硬件描述语言中for语句的使用较C语言等软件描述语言有较大的区别. 在Verilog中除了在Testbench(仿真测试激励)中使用for循环语句外,在Test ...

  2. STM32自带的bool型变量

    这些标着位会让你的程序使用起来更方便. First you need to include "STM32f10x_type.h" /*布尔型变量*/typedef enum{FAL ...

  3. 【VB】操作ODBC-DAO方式操作只能查询,不能更新插入操作解决。

    最近接手一个改善项目,需要从Access转化到SQL Server 2014,使用原有的ODBC连接方式只能查询,不能更新插入.网上一直找不到解决方案,然后自己测试一下使用ADO方式竟然可以连接了.具 ...

  4. Javascript 层次

    1. HTML5, Tool, Framework ---------------------------UI: Liger UI, jQuery UI, jQuery Mobile -------- ...

  5. iOS开发学习--纯代码 UIScrollView 无限循环的实现——代码类封装

    一个简单的利用UIScrollView 实现的无线滚动banner,下面的代码实现,因为封装问题,对两个及一下的view 支持出了一点问题(view是传参进来的,不可以生成两份),但是原理是正确的,智 ...

  6. ios入门之c语言篇——基本函数——3——判断日期是一年的第几天

    3.判断日期是一年的第几天 参数返回值解析: 参数: y:int,年份: m:int,月份 d:int,日期 返回值: sum:传入日期是当年的第几天: 函数解析: leapyear(y);判断y是不 ...

  7. Spring中用@Component、@Repository、@Service和 @Controller等标注的默认Bean名称会是小写开头的非限定类名

    今天用调度平台去调用bean中的方法时,提示找不到bean.经查,发现是由于如果在标注上没有提供name属性值,则默认的bean名称是小写开头的,而不是大写开头的. 下面是其他文档参阅: 使用过滤器自 ...

  8. underscore.js框架使用

    Underscore.js是一个很精干的库,压缩后只有4KB.它提供了几十种函数式编程的方法,弥补了标准库的不足,大大方便了JavaScript的编程.MVC框架Backbone.js就将这个库作为自 ...

  9. Hadoop环境搭建-入门伪分布式配置(Mac OS,0.21.0,Eclipse 3.6)

    http://www.linuxidc.com/Linux/2012-10/71900p2.htm http://andy-ghg.iteye.com/blog/1165453 为Mac的MyEcli ...

  10. The Embarrassed Cryptographer(高精度取模+同余模定理)

    Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 11435   Accepted: 3040 Description The ...