码迷,mamicode.com
首页 > Web开发 > 详细

HTML,CSS

时间:2016-11-25 14:38:30      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:浏览器   数据库   服务端   标签   开发者   

HTML
    1、一套规则,浏览器认识的规则。
    2、开发者:
        学习Html规则
        开发后台程序:
            - 写Html文件(充当模板的作用) ******
            - 数据库获取数据,然后替换到html文件的指定位置(Web框架)

    3、本地测试
         - 找到文件路径,直接浏览器打开(单个文件测试时,无需使用socket服务端)
         - pycharm打开测试
    4、编写Html文件
        
        - doctype对应关系  <!--对于不同的浏览器有自己的编码规范,<!DOCTYPE html>默认是统一的规范,否则显示的页面由于对应关系不同,会错位-->
        - html标签,标签内部可以写属性 ====> 只能有一个,<html lang="en"> </html>==>html标签,lang="en"叫html标签的属性。
        - 注释:  <!--  注释的内容  -->
    5、标签分类
        - 自闭合标签
            只写了一个<meta>标签,没有</meta>标签,自己就闭合了。
            例如:<meta charset="UTF-8">  
        - 主动闭合标签
            例如:<title>老男孩</title>  
    6、
        
        - <meta  -> 编码,跳转,刷新,关键字,描述,IE兼容
         6.1 编码:<meta charset="UTF-8">
          6.2 跳转:<meta http-equiv="Refresh" Content="5" Url="http://baidu.com" /> 5秒钟后跳转至baidu.com
          6.3 刷新:<meta http-equiv="Refresh" Content="30">  该页面默认30秒刷新一次
          
          6.4 关键字:<meta name="keywords" content="星际2,红警">
          6.5 描述: <meta name="description" content="汽车之家为您提供最新汽车报价。" />
          6.6 兼容:<meta http-equiv="X-UA-Compatible" content="IE=IE9;IE=IE8;" />
            
            - title标签   ,网站的标题
            - <link /> 搞图标,欠
            - <style />欠
            - <script> 欠
    7、body标签
         - 图标,  &nbsp;  &gt;   &lt;
         - p标签,段落 <p></p>
         - br,换行  <br />
         ======== 小总结  =====
            所有标签分为:

            标签之间可以嵌套
            标签存在的意义:通过 css操作、js操作可以方便定位到哪个标签的值。
                 
            ps:chorme审查元素的使用
                - 定位
                - 查看样式
        - h系列   :标题字体大小,从h1到h6,h1最大,h6最小。   <h1></h1> 
        - 
        - span   :白板,横着输出。属于行内标签;  <span></span>
        - input系列 + form标签
            input type=‘text‘     - name属性,value="赵凡" 
            input type=‘password‘ - name属性,value="赵凡" 
            input type=‘submit‘   - value=‘提交‘ 提交按钮,表单
            input type=‘button‘   - value=‘登录‘ 按钮
            
            input type=‘radio‘    - 单选框 value,checked="checked",name属性(name相同则互斥)
            input type=‘checkbox‘ - 复选框 value, checked="checked",name属性(批量获取数据)
            input type=‘file‘     - 依赖form表单的一个属性 enctype="multipart/form-data"
            input type=‘rest‘     - 重置
    
            <textarea >默认值</textarea>  - name属性
            select标签            - name,内部option value, 提交到后台,size,multiple
        
        - a标签
            - 跳转
            - 锚     href=‘#某个标签的ID‘    标签的ID不允许重复
            
        - img 
             src
             alt
             title
             
        - 列表
            ul
                li
            ol
                li
            dl
                dt
                dd
        - 表格
            table
                thead
                    tr
                        th
                tbody
                    tr
                        td
            colspan = ‘‘
            rowspan = ‘‘
        - label
            用于点击文件,使得关联的标签获取光标
            <label for="username">用户名:</label>
            <input id="username" type="text" name="user" />
        - fieldset
            legend
        
    - 20个标签
CSS
    
    在标签上设置style属性:
        background-color: #2459a2;
        height: 48px;
        ...
    
    编写css样式:
        1. 标签的style属性
        2. 写在head里面 style标签中写样式
            - id选择区
                  #i1{
                    background-color: #2459a2;
                    height: 48px;
                  }
                  
            - class选择器 ******
                
                  .名称{
                    ...
                  }
                  
                  <标签 class=‘名称‘> </标签>
            
            - 标签选择器
                    div{
                        ...
                    }
                    
                    
                    所有div设置上此样式
            
            - 层级选择器(空格) ******
                   .c1 .c2 div{
                        
                   }
            - 组合选择器(逗号) ******
                    #c1,.c2,div{
                        
                   }
            
            - 属性选择器 ******
                   对选择到的标签再通过属性再进行一次筛选
                   .c1[n=‘alex‘]{ width:100px; height:200px; }
                   
            PS:
                - 优先级,标签上style优先,编写顺序,就近原则
            
        2.5 css样式也可以写在单独文件中
            <link rel="stylesheet" href="commons.css" />
            
        3、注释
            /*   */
    
        4、边框
             - 宽度,样式,颜色  (border: 4px dotted red;)
             - border-left
        
        5、  
            height,         高度 百分比
            width,          宽度 像素,百分比
            text-align:ceter, 水平方向居中
            line-height,垂直方向根据标签高度
            color、     字体颜色
            font-size、 字体大小
            font-weight 字体加粗
        
        6、float
            让标签浪起来,块级标签也可以堆叠
            老子管不住:
                <div style="clear: both;"></div>
            
        7、display
            display: none; -- 让标签消失
            display: inline;
            display: block;
            display: inline-block;
                     具有inline,默认自己有多少占多少
                     具有block,可以设置无法设置高度,宽度,padding  margin
            ******
            行内标签:无法设置高度,宽度,padding  margin
            块级标签:设置高度,宽度,padding  margin
            
            
        8、padding  margin(0,auto)


CSS补充:
    - position
        position: fixed;  <!-- 固定窗口在某个位置,可以跟随窗口一起动 -->
        position: absolute;   <!-- 绝对定位,一开始定在哪里,就是哪里了。 -->
        relative+avsolute的用法:
            父标签里定义一个position:relative;子标签里定义一个position:absolute; 子标签就会相对父标签定位。
        bottom:20px;  <!-- 离下面多远 -->
        right: 20px;  <!-- 离右面多远 -->
        margin-top: 50px;  <!-- 外边距距离上面有50像素。防止标签内容被postion那个标签挡住 -->
    - background
        background-image:url(‘img/1.gif‘)  <!-- 背景图片,默认是如果div设置的很大,图片会重复放置 -->
        background-repeat:repeat-x; <!-- 表示横向加载 -->
        background-repeat:repeat-y; <!-- 表示纵向加载 -->
        background-repeat:no-repeat; <!-- 表示不重复加载 -->
        background-position-x:0;
        background-position-y:-20px;
        background-position:0 -20px;
    - hover   <!-- .menu:hover  表示当鼠标放在应用此样式的标签上,就会显示该属性的效果 -->
    - overflow  <!-- overflow: auto 如果下面图片标签的宽度超过这个标签设定的宽度就出现滚动条; overflow: hedden 超过就隐藏-->
    - z-index   <!--表示层级的顺序;谁的值大,谁就在上面-->
    - opacity  <!--透明度,只有0~1,1为不透明,0为完全透明-->
    
    示例:输入框右边放置图标
    
JavaScript:
    局部变量 var
    基本数据类型:
        数字
        字符串
        数组
        字典
        布尔值
    For循环
        
    条件语句
        ==
        !=
        ===
        !==
        
        ||
        
        &&
        
    函数的定义:
        function func(){
            ...
        }
Dom
    
    找标签
        - 直接找 $(‘#id‘)  $(‘.c1‘).siblings()
        - 简介找
    操作:
        
        innerText
        
        checkbox: 
            checked    
        
        className
        classList
        
    事件:
        <div onclick=‘函数(123)‘></div>
        
        <script>
            。。。。
        </script>
        
    定时器
        setInterval(‘函数()‘, 4000)
    
    其他:
        
        alert()
        console.log()
        

        
        
        
        
CSS重要的标签
    position
    background
    text-align
    margin
    padding
    font-size
    z-index
    over-flow
    :hover
    opacity
    float (clear:both)
    line-height
    border
    color
    display
    
    补充:页面布局
          主站—
                <div class=‘pg-header‘>
                       <div style=‘width:980px;margin:0 auto;‘>
                           内容自动居中
                       </div>
                
                </div>
                <div  class=‘pg-content‘></div>
                <div  class=‘pg-footer‘></div>
          后台管理布局:
            position:
                fiexd    -- 永远固定在窗口的某个位置
                relative -- 单独无意义
                absolute -- 第一次定位,可以在指定位置,滚轮滚动时,不在了。。。。
                
            a. 
                左侧菜单跟随滚动条
            b. 
                左侧以及上不不动   ******


JavaScript


    6、for循环
    
        for(var item in [11,22,33]){
            console.log(item);
            continue;
        }
        
        var arra = [11,22,32,3]
        for(var i=0;i<arra.lenght;i=i+1){
            break;
        }
        
        while(条件){
        
        
        }
    7、条件语句
    
        if(){
        
        }else if(){
        
        }else{
        
        }
        
        ==
        ===
        
        name=‘3‘;
        
   
        switch(name){
            case ‘1‘:
                age = 123;
                break;
            case ‘2‘:
                age = 456;
                break;
            default :
                age = 777;
        }
        
    8. 函数
        function func(arg){
        
            return arg+1
        }
        var result = func(1)
        console.log(result);
        
        普通函数:
            function func(){
                
            }
        匿名函数:
            
            function func(arg){
            
                return arg+1
            }
            
            setInterval("func()", 5000);
            
            setInterval(function(){
                console.log(123);
            
            },5000)
            
        自执行函数(创建函数并且自动执行):
            function func(arg){
                console.log(arg);
            }
            // func(1)
            
            (function(arg){
                console.log(arg);
            })(1)
    9、序列化
        JSON.stringify()   将对象转换为字符串
        JSON.parse()       将字符串转换为对象类型
        
    10、转义
        客户端(cookie)   =》 服务器端
        将数据经过转义后,保存在cookie
        
    11、eval
        python:
            val = eval(表达式)
                  exec(执行代码)
        JavaScript:
            eval
    12、时间
        Date类
        
        var d = new Date()
        
        d.getXXX  获取
        d.setXXX  设置
        
    13、作用域
        ================================ 1. 以函数作为作用域 (let)================================
        
        其他语言: 以代码块作为作用域
                    public void Func(){
                        if(1==1){
                            string name = ‘Java‘;
                            
                        }
                        console.writeline(name);
                        
                    }
                    Func()
                    // 报错
                    
        Python:   以函数作为作用域
                    情况一:
                        def func():
                            if 1==1:
                                name = ‘alex‘
                            print(name)
                            
                        func()
                        // 成功
                    情况二:
                        def func():
                            if 1==1:
                                name = ‘alex‘
                            print(name)
                            
                        func()
                        print(name)
                        // 报错
                
        JavaScript:  以函数作为作用域
        
                    function func(){
                        if(1==1){
                            var name = ‘alex‘;
                        }
                        console.log(name);
                    }
                    func()
        
        ================================ 2. 函数的作用域在函数未被调用之前,已经创建 ================================
        
        function func(){
            if(1==1){
                var name = ‘alex‘;
            }
            console.log(name);
        }
        
        ================= 3. 函数的作用域存在作用域链,并且也是在被调用之前创建 ==================
        示例一:
            xo = "alex";
            
            function func(){
                // var xo = ‘eric‘;
                function inner(){
                    // var xo = ‘tony‘;
                    console.log(xo);
                }
                
                inner()
            }
            
            func()
        
        示例二:
            xo = "alex";
            
            function func(){
                var xo = ‘eric‘;
                function inner(){
                    
                    console.log(xo);
                }
                
                return inner;
            }
            
            var ret = func()
            ret()
        
        
        
        示例三:
            xo = "alex";
            
            function func(){
                var xo = ‘eric‘;
                function inner(){
                    
                    console.log(xo);
                }
                var xo = ‘tony‘;
                
                return inner;
            }
            
            var ret = func()
            ret()
        
        ================= 4. 函数内局部变量 声明提前 ==================
        
        function func(){
            console.log(xxoo);
        }
        
        func();
        // 程序直接报错
        
        function func(){
            console.log(xxoo);
            var xxoo = ‘alex‘;
        }
        解释过程中:var xxoo;
        
        func();
        // undefined
        
    14、JavaScript面向对象
        
        JavaScript面向对象
            function foo(){
                var xo = ‘alex‘;
            }
            
            foo()
            
            
            
            function Foo(n){
                this.name = n;
                this.sayName = function(){
                    console.log(this.name);
                }
            }
            
            var obj1 = new Foo(‘we‘);
            obj1.name
            obj1.sayName()
            
            
            var obj2 = new Foo(‘wee‘);
            obj2.name
            obj2.sayName()
            ==============》
                a. this代指对象(python self)
                b. 创建对象时, new 函数()
        
        
        Python的面向对象:
            class Foo:
                def __init__(self,name):
                    self.name = name
                    
                def sayName(self):
                    print(self.name)
                    
            obj1 = Foo(‘we‘)

            obj2 = Foo(‘wee‘)
        
       
        原型:
        
            function Foo(n){
                this.name = n;
            }
            # Foo的原型
            Foo.prototype = {
                ‘sayName‘: function(){
                    console.log(this.name)
                }
            }
            
        
            obj1 = new Foo(‘we‘);
            obj1.sayName()
            
            obj2 = new Foo(‘wee‘);


DOM
    查找
        直接查找
            var obj = document.getElementById(‘i1‘)
        间接查找
            文件内容操作:
                innerText    仅文本
                innerHTML    全内容
                value
                    input    value获取当前标签中的值
                    select   获取选中的value值(selectedIndex)
                    textarea value获取当前标签中的值
                
                搜索框的示例
    操作:      
            样式操作:
                className
                classList
                    classList.add
                    classList.remove
                   
                   
                obj.style.fontSize = ‘16px‘;
                obj.style.backgroundColor = ‘red‘;
                obj.style.color = "red"
                
                
            属性操作:
                attributes
                getAttribute
                removeAttribute
                
            创建标签,并添加到HTML中:
                a. 字符串形式
                
                b. 对象的方式
                    document.createElement(‘div‘)
                
                
            提交表单
                任何标签通过DOM都可提交表单
                
                document.geElementById(‘form‘).submit()
            
            其他:
                console.log()
                alert
                var v = confirm(信息)  v:true false
                
                location.href
                location.href = ""  # 重定向,跳转
                location.reload()   # 页面刷新
                location.href = location.href   < === > location.reload()
                
                
                var o1 = setInterval(function(){}, 5000)
                clearInterval(o1);
                
                var o2 = setTimeout(function(){}, 50000);
                clearTimeout(o2);
                
                var obj = setInterval(function(){
                    
                }, 5000)
                
                clearInterval(obj);
        
    事件:
        onclick,onblur,onfocus
        
        行为  样式  结构 相分离的页面?
        js    css   html  
        
        绑定事件两种方式:
            a. 直接标签绑定 onclick=‘xxx()‘  onfocus
            b. 先获取Dom对象,然后进行绑定
                document.getElementById(‘xx‘).onclick
                document.getElementById(‘xx‘).onfocus
                
        this,当前触发事件的标签
            a. 第一种绑定方式
                <input id=‘i1‘ type=‘button‘ onclick=‘ClickOn(this)‘>
                
                function ClickOn(self){
                    // self 当前点击的标签
                    
                }
            b. 第二种绑定方式
                <input id=‘i1‘ type=‘button‘ >
                document.getElementById(‘i1‘).onclick = function(){
                
                    // this 代指当前点击的标签
                }
            
                
        作用域示例:
                var myTrs = document.getElementsByTagName("tr");
                var len = myTrs.length;
                for(var i=0;i<len;i++){
                    // i=0,i=1,i=2
                    myTrs[i].onmouseover = function(){
                         this.style.backgroundColor = "red";
                    };

                }
            
        
jQuery


HTML,CSS

标签:浏览器   数据库   服务端   标签   开发者   

原文地址:http://xiaofengcanyue.blog.51cto.com/6671161/1876475

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!