前端入门记录

本页面内容全部来自于bilibili博主:罗大富Bigrich合集:3小时前端入门教程(HTML+CSS+JS),这篇CSDN用于复盘所学。

在这里就不提及软件下载和环境搭建了,罗老师那里有详细教程可以点击上方链接进入学习观看。这里说一个比视频中好用的实时浏览页面插件(Live Preview)

Live Preview
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/a93edc2d4b244b43980e1e3140453ccc.png

一、HTML基础

HTML(HyperText Markup Language)不是编程语言,而是一种“标记语言”。它用标签(tag)给文本内容做“语义标记”,告诉浏览器:这是标题、这是段落、这是列表、这是表格、这是输入框……人眼看到的是排版,机器读到的却是一棵 DOM 树(Document Object Model)。

在学习中,HTML主要讲了四个区块的内容:

1.<h1>…<h6> 页面主-副标题,数字越小字号越大
<p> 段落 <ul>/<ol> 无序/有序列表 <li> 列表项
<table> 表格 <tr> 行 <th> 列标题 <td> 单元格

2.<a href="URL" target="_blank"> 超链接;target="_blank"新窗口打开
<img src="路径" alt="说明" width height> 嵌入图片;alt图片失效时显示文字

3.<div> 无意义块级容器,用来“分区”
<nav> 语义:导航区域 <span> 无意义行内容器,用来“包一小段”

4.<form action="后端接口"> 表单数据打包发送
<label for="id"> 点击文字即可聚焦对应输入框
<input type="…"> 用户输入控件;type决定样式与校验规则
<button type="submit"> 提交按钮

以下是各个部分内容的HTML编码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>1.常见文本标签练习</title>
</head>
<body>
    <h1>一级标题标签</h1>
    <h2>二级标签</h2>
    <p>这是一个标题标签</p><p>这是我的测试标签</p>
    <p>更改文本样式、<strong>字体加粗</strong><i>斜体</i><u>下划线</u><s>删除线</s></p>
    <ul>
        <!-- 无序标签块 -->
        <li>无序列表元素 1</li>
        <li>无序列表元素 2</li>
        <li>无序列表元素 3</li>
    </ul>

    <ol>
        <!-- 有序标签块 -->
        <li>有序列表元素 1</li>
        <li>有序列表元素 2</li>
        <li>有序列表元素 3</li>
    </ol>

    <h1>table row</h1>
    <h1>table data</h1>
    <h1>table header</h1>
    <table border="2">
        <tr>
            <!-- 行 -->
             <!-- 行头 -->
            <th>列标题 1</th>
            <th>列标题 2</th>
            <th>列标题 3</th>
        </tr>
        <tr>
            <!-- 行元素 -->
            <td>元素 1</td>
            <td>元素 2</td>
            <td>元素 3</td>
        </tr>
        <tr>
            <td>元素 21</td>
            <td>元素 22</td>
            <td>元素 23</td>
        </tr>
        <tr>
            <td>元素 31</td>
            <td>元素 32</td>
            <td>元素 33</td>
        </tr>
    </table>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>1.常见文本标签练习</title>
</head>
<body>
    <h1>一级标题标签</h1>
    <h2>二级标签</h2>
    <p>这是一个标题标签</p><p>这是我的测试标签</p>
    <p>更改文本样式、<strong>字体加粗</strong><i>斜体</i><u>下划线</u><s>删除线</s></p>
    <ul>
        <!-- 无序标签块 -->
        <li>无序列表元素 1</li>
        <li>无序列表元素 2</li>
        <li>无序列表元素 3</li>
    </ul>

    <ol>
        <!-- 有序标签块 -->
        <li>有序列表元素 1</li>
        <li>有序列表元素 2</li>
        <li>有序列表元素 3</li>
    </ol>

    <h1>table row</h1>
    <h1>table data</h1>
    <h1>table header</h1>
    <table border="2">
        <tr>
            <!-- 行 -->
             <!-- 行头 -->
            <th>列标题 1</th>
            <th>列标题 2</th>
            <th>列标题 3</th>
        </tr>
        <tr>
            <!-- 行元素 -->
            <td>元素 1</td>
            <td>元素 2</td>
            <td>元素 3</td>
        </tr>
        <tr>
            <td>元素 21</td>
            <td>元素 22</td>
            <td>元素 23</td>
        </tr>
        <tr>
            <td>元素 31</td>
            <td>元素 32</td>
            <td>元素 33</td>
        </tr>
    </table>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HTML 区块</title>
</head>
<body>
    <!-- div就是分块 -->
    <div class="nav">
        <!-- nav是导航栏 -->
        <a href="#" title="这是一个空白网站">链接1</a>
        <a href="#">链接2</a>
        <a href="#">链接3</a>
        <a href="#">链接4</a>
        <a href="#">链接5</a>
    </div>

    <div class="content">
        <h1>文章标题</h1>
        <p>文章内容</p>
        <p>文章内容</p>
        <p>文章内容</p>
        <p>文章内容</p>
        <p>文章内容</p>
        <p>文章内容</p>
    </div>
    <!-- span是一个行内元素标签 -->
    <span>这是第一个span标签</span>
    <span>这是第一个span标签</span>
    <span>这是第一个span标签</span>
    <span>这是第一个span标签</span>
    <hr>
    <span>连接点这里<a href="#">链接</a></span>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <form action="#">
        <!-- 表单的总标签,以下内容全部通过action将id、name传到后端 -->
        <label for="username">用户名:</label>
        <!-- label标签 -->
        <input type="text" id="username" placeholder="请输入用户名" name="username" required>
        <!-- 输入栏,type指的是输入的文本类型,同时也决定了输入东西的展现形式,required则表示文本为必须输入的内容,没输入会有提示 -->
        <br>
        <br>
        <label for="password">密码:</label>
        <input type="password" id="psd" placeholder="请输入密码" name="password" required>
        <br>
        <br>

        <label for="">性别</label>
        <!-- radio为单选标签,要有同一name -->
        <input type="radio" name="gender"><input type="radio" name="gender"><input type="radio" name="gender">其他
        <br>
        <br>

        <label>爱好</label>
        <!-- checkbox为多选标签,但是他们的name必须相同 -->
        <input type="checkbox" name="hobby">唱歌
        <input type="checkbox" name="hobby">跳舞
        <input type="checkbox" name="hobby">rup
        <input type="checkbox" name="hobby">篮球
        <br>
        <br>
<!-- 在这里,这个input和这个bottom的意思一样 -->
        <input type="submit" value="上传">
        <button type="submit">登录</button>

    </form>

    
</body>
</html>

二、CSS基础

CSS(Cascading Style Sheets)是“层叠”样式表,用来描述“HTML 元素长什么样、放在哪、如何动”。浏览器把 HTML 解析成 DOM 后,再生成 CSSOM(CSS Object Model),两者合并成渲染树,最终交给 GPU 画像素。

在学习中,CSS主要讲了四个区块的内容:
1. 引入外部样式表 写在本页的样式 style=“…” 行内样式1(优先级最高)

2.选择器
h2{…} 选中所有h2 .class{…} 选中某类 #id{…} 唯一ID
父代、子代选择器  :hover 鼠标悬停状态

3.CSS常用属性
color 文字颜色 background-color 背景色
font: 粗细 字号 字体; 字体族(Font-family)、字体大小(Font-size)和字体样式(Font-style)
line-height 行间距
display:inline/block/inline-block 元素排列方式切换

4.盒子模型
padding 内边距(字到边框的距离)
border 边框 margin 外边距(边框到别人的距离)

5.浮动
float:left/right 让块级元素贴左/右,文字环绕
clear:both 或 overflow:hidden 解决父元素因浮动“坍塌”

6.定位
position:static/relative/absolute/fixed/sticky
控制元素“脱离”或“固守”文档流;
left/top/right/bottom再配合移动

下面是上面内容的HTML编码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS导入方式</title>
    <!-- 这是一个外联样式 -->
     <!-- stylesheet表格风格样式 -->
    <link rel="stylesheet" href="css\style.css">
<!-- 这是一个内部样式 -->
    <style>
        p{
            color: rgb(208, 101, 6);
            font-size: 26px;
        }
        
        h2{
            color: paleturquoise;
        }
    </style>
</head>
<body>
    <p>这是一个用了css样式的文本</p>
    <!-- 这是一个内联样式 -->
    <h1 style="color:pink;">这是一个一级标题,使用CSS内联样式</h1>
    <h2>这是一个二级标题,使用CSS中的内部样式</h2>
    <h3>这是一个三级标题,使用CSS中的外部样式</h3>
</body>
</html>

这里是外联样式文件代码:

console.log("hello,外联样式");
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
            /*  元素选择器*/
    h2{
        color: brown;
    }
    /* 类选择器 */
    .hightlight{
        background-color: yellow;
    }
    /* id 选择器 */
    #header{
        font-size: 35px;
    }
    /* 通用选择器 */
    *{
        font-family: "KaiTi";
        font-weight: bolder;
    }
    /* 子元素选择器 */
    .father >.son   {
        /* 可以理解为这是只针对子代的选择器 */
        color: yellowgreen;
    }
    /* 后代选择器 */
    .father p{
        /* 对类名p标签的全覆盖 */
        color: burlywood;
        font-size: larger;
    }
    /* 相邻元素选择器 */
    /* 只选中紧跟在选中元素之后的标签 */
    h3 + p{
        color: aqua;
        background-color: red;
    }
    /* 伪类选择器 */
    /* 选择处于特定状态或者具有特定属性的元素,比如鼠标悬停或者其他待定状态 */
    #element:hover{
        background-color: blueviolet;
    }
    /* 
    选中第一个子元素  :first-child
                    :nth-child
                    :active
     */
     /* 
     伪元素选择器,感觉是用来装饰美化文本内容的
     ::after
     : :before
     */
</style>
<body>
    <h1>不同类型的CSS选择器</h1>

    <h2>这是一个元素选择器示例</h2>
    <h3 class="hightlight">这是一个类选择器实例:</h3>
    <h3>这是另一个类选择器实例</h3>
    
    <h4 id="header">这是一个 ID 选择器实例</h4>
    <div class="father">
        <p class="son">这是一个子元素选择器实例</p>
        <div>
            <p class="grandson">这是一个后代选择器示例 </p>
        </div>
    </div>

    <p>这是一个普通的p标签</p>
    <h3>这是一个兄弟相邻选择器示例</h3>
    <p>这是另一个p标签</p>

    <h3 id="element">这是一个伪类选择器示例</h3>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width= , initial-scale=1.0">
    <title>Document</title>
</head>
<style>
    .block{
        background-color: pink;
        width: 150px;
        height: 100px;
    }
    .inline{
background-color: beige;
    }
    .inline-block{
        width: 100px;
        height: 150px;
    }
    p{
        color: pink;
    }
    .div-inline{
        display: inline;
        background-color: aqua;
    }
    .span-inline-block{
        display: inline-block;
        background-color: purple;
        width: 300px;
    }
</style>
<body>
    <h1 style="font: bolder 50px 'KaiTi';">这是一个 font 复合属性示例</h1>
    <p style="line-height: 40px;">我今天再也不睡这么晚了,我的天脑子晕乎乎的眼睛也疼,回去洗个澡差不多睡觉了zzz,今天中午倒是睡得挺香的,希望晚上我也能睡这么香</p>
    
    <div class="block">这是一个块级元素</div>
    <span class="inline">这是一个行内元素</span>
    <img src="image.png" alt="" class="inline-block">
    <h2>display</h2>
    <div style="display: inline; background-color: pink;">这是一个转换成行内元素的div标签</div>
    <div class="div-inline">这是一个转换成行内元素的div标签</div>
    <span class="span-inline-block">这是一个转换成行内块元素的span标签</span>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* "."指的是类名,“#” 指的是ID名*/


        /* padding指的是内边距,就是字周围所占的距离*/
        /* margin指的是外边距,是边框以外的距离 */
        /* border指的是边框 */
        .demo{
            background-color: plum;
            display: inline-block;
            border: 5px solid yellowgreen;
            padding: 50px;
            margin: 40px;
        }
        .border-demo{
            background-color: pink;
            width: 300px;
            height: 200px;
            padding: 150px 0px 0px 150px;
            margin: 40px;
            border-style: solid /*dashed dotted double*/;
            border-width: /*10px 20px 30px*/ 40px;
            border-color: burlywood;

           
            /* border-left: 20px solid navajowhite; */
        } 
    </style>
</head>
<body>
    <div class="demo">梁兴是个小笨猪</div>
    <div class="border-demo"><a href="#">点我</a>这是一个边框示例</div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>浮动</title>
    <style>
        /* 浮动就是float,他可以控制行内块元素的位置 */
        .father{
            background-color: rgb(50, 222, 179);
            /* height: 200px; */
            border: 3px solid black;
            /* 防止坍塌方法1 */
            /* 隐藏超出边界的内容 */
            overflow: hidden;
        }

        /* 防止坍塌方法2 */
        /* clear的作用就是清除浮动影响 */
        .father::after{
            content: "";
            display: table;
            clear: both;
        }

        .left-son{
            width: 100px;
            height: 100px;
            background-color: rgb(199, 129, 199);
            float: left;
        }

        .right-son{
            width: 100px;
            height: 100px;
            background-color: yellow;
            float: right;
        }
    </style>
</head>

<body>
    <div class="father">
        <div class="left-son">左浮动</div>
        <div class="right-son">右浮动</div>
    </div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>定位</title>
    <style>
        .box1{
            height: 350px;
            background-color: aqua;
        }

        .box-normal{
            width: 100px;
            height: 100px;
            background-color: purple;
        }

        .box-relative{
            width: 100px;
            height: 100px;
            background-color: pink;
            position: relative;
            left: 120px;
            top: 40px;
        }
        
        .box2{
            height: 350px;
            background-color: yellow;
            margin-bottom: 200px;
        }

        .box-absolute{
            width: 100px;
            height: 100px;
            background-color: palevioletred;
            position: absolute;
            left: 120px;
        }

        .box-fixed{
            width: 100px;
            height: 100px;
            background-color: brown;
            position: fixed;
            right:10px;
            top: 330px;
        }
    </style>
</head>
<body>
    <h1>相对定位</h1>
    <div class="box1">
        <div class="box-normal"></div>
        <div class="box-relative"></div>
        <div class="box-normal"></div>
    </div>
    <h1>绝对定位</h1>
        <div class="box2">
            <div class="box-normal"></div>
            <div class="box-absolute"></div>
            <div class="box-normal"></div>
        </div>
        <h1>固定定位</h1>
        <div class="box-fixed"></div>
</body>
</html>

三、Java Script

JavaScript(ECMAScript 规范)是浏览器内嵌的动态语言,用来“监听事件、改变 DOM、与网络/存储/设备打交道”。它把静态页面变成应用(Application)。

在学习中,Java Script主要讲了四个区块的内容:

1.<script src="…"> 引入外部 JS <script> 写在本页的脚本
<head> n内会阻塞渲染;放 <body> 底部或加 defer 不阻塞

2.JS基础语法
var/let/const 声明变量 if/for/while 流程控制 console.log() 打印调试

3.事件属性
onclick=“函数()” 点击触发 onfocus/onblur 获得/失去焦点触发

4.DOM 查询
getElementById() 按 id 抓节点 getElementsByClassName() 按类抓
innerHTML / innerText 读写节点内容 style.属性 直接改样式
addEventListener('click',fn) 现代事件绑定

5.DOM 节点操作
这里综合了前面的知识,做了一个可以增加或者删除行,修改内容的表格:
在这里插入图片描述

createElement() 新建节点 appendChild() 追加到父节点
removeChild() 删除节点 
this 指向被点击的当前行/按钮

以下是上述功能所示代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JS导入方式</title>
    <script>
        console.log("hello,head标签的内联样式")
    </script>

    <script src="JS\myscript.js"></script>
</head>

<body>
    <h1>JS的导入方式</h1>
    <script>
        console.log("hello,body标签的内联样式")
        alert("你好内联样式弹窗")
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JS基础语法</title>
</head>
<body>
    <script>
        var x;
        let y = 5;
        const PI = 3.14;
        console.log(x,y,PI);
        let name ="如花"
        console.log(name);
        let empty_value = null;
        console.log(empty_value);
        
        let age = 18;
        if (age>=18){
            console.log("你已经成年了");
        }else{
            console.log("不好意思,你还没有成年");
            
        }

        // let time = 22;
        // if(time<12){
        //     alert("上午好!!!!!")
        // }else if(time<18){
        //     alert("下午好!!!!!")
        // }else{
        //     alert("晚上好!!!!!")
        // }
        console.log("循环");
        for(let i=0 ; i<10; i++){
            console.log(i);
            
        }

        console.log("while循环");
        let count = 1;
        while (count<=10) {
            console.log(count);
            count++;
        }
        

        
    </script>
    
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button onclick="click_event()">这是一个点击事件按钮</button>
    <input type="text" onfocus="focus_event()" onblur="blur_event()">
    <script>
        //点击事件
        function click_event(){
            alert('点击事件触发了');
        }
        //获取焦点
        function focus_event() {
            console.log('获取焦点');
        }
        //失去焦点
        function blur_event() {
            console.log('失去焦点');
        }
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>DOM</title>
</head>
<body>

    <div id="box1">这是一个ID选择器标签</div>
    <div class="box2">这是一个类名选择器标签</div>
    <div>普通的div标签</div>
    <button>点击按钮</button>

    <script>
        var element_id = document.getElementById('box1');
        console.log(element_id);

        var element_class = document.getElementsByClassName('box2')[0];
        console.log(element_class);

        var element_tag = document.getElementsByTagName('div')[2];
        console.log(element_tag);
        
        element_id.innerHTML = '<a href="#">跳转链接</a>';
        element_class.innerTaxt = '修改后的类选择器HTML文本';

        element_tag.style.color='red'
        element_tag.style.fontSize='20px'

        //DOM属性绑定事件
        var button_element = document.getElementsByTagName('button')[0]
        console.log(button_element);

        // button_element.onclick=function () {
        //     alert('DCM属性按键触发');
        // }
        button_element.addEventListener('click',function () {
            alert('通过 addEventListener 触发链接')
        })
    </script>
    
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>表格的增删改查</title>
    <style>
        table{
            width: 100%;
            margin-top: 20px;
        }
        th,td{
            border: 1px solid #ddd;
            text-align: center;
            padding: 8px;
        }
        .shanchu{
            font-size: 30px;
            font-family: SimHei, sans-serif;
            color: rgba(236, 6, 6, 0.954);
            cursor: pointer;
            border-radius: 10px;
            background-color: rgb(241, 179, 86);
            margin: 0 50px 0 0;
            float: right;
            width: 100px;
            height: 50px;
            transition: background-color 0.3s;
        }
        .shanchu:hover{
            color: black;
            background-color: rgb(228, 68, 32);
        }
        .bianji:hover{
            color: black;
            background-color: rgb(133, 244, 7);
        }
        .bianji{
            font-size: 30px;
            font-family: SimHei, sans-serif;
            color: rgba(105, 154, 21, 0.954);
            cursor: pointer;
            border-radius: 10px;
            background-color: rgb(39, 83, 25);
            float: left;
            margin: 0 0 0 50px;
            width: 100px;
            height: 50px;
            transition: background-color 0.3s;
        }
        th{
            background-color:#ddd;
        }
    </style>
</head>
<body>
    <h1 style="text-align: center">表格的增删改查</h1>
    <button onclick="addRow()">新增数据</button>
    <table id="table">
        <tr>
            <th>姓名</th>
            <th>联系方式</th>
            <th>操作</th>
        </tr> 
        <tr>
            <td>梁兴</td>
            <td>2024401091</td>
            <td>
                <button class="bianji" onclick="editRow(this)">编辑</button>
                <button class="shanchu" onclick="deleteRow(this)">删除</button>
            </td>
        </tr>
    </table>
    <script src="./JS/table.js"></script>
</body>
</html>

四、移动端适配和弹性盒子

1.rem 适配脚本
document.documentElement.style.fontSize = screen.width/10+'px'
这里让 1 rem 永远等于屏幕宽度的 1/10,实现等比缩放

2.Flex 布局
display:flex 父盒子变弹性容器,子元素可自动伸缩
子元素 width rem 写,自动随屏幕改变大小

代码:

<!DOCTYPE html>
<html lang="en">
<head>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>rem移动端适配原理</title>
    <style>
        html{
            font-size: 20px;
        }
        .box1-px{
            width: 300px;
            height: 100px;
            background-color: purple;
                        margin-bottom: 50px;
        }
        .box2-rem{
            width: 5rem;
            height: 3rem;
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="box1-px"></div>
    <div class="box2-rem"></div>

    <script>
        // 获取设备宽度,计算HTML标签的font-size的属性值
        function resetHTMLFontSize(){
            document.documentElement.style.fontSize = screen.width/10 + 'px'
        }
        resetHTMLFontSize()

        // 绑定事件
        window.onresize = resetHTMLFontSize;

    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Flex弹性盒子</title>
    <style>
        html{
            font-size: 10px;
        }

        .container{
            display: flex;
            height: 40rem;
            background-color: aqua;
            /* flex-direction: column; */
            /*  */
            flex-wrap: wrap;
            /* 项目在同一轴线排开是否换行 */
            /* justify-content: space-evenly;主轴对称方式 */
            /* align-items: stretch;交叉轴对称方式 */
            align-content: center;
        }
        .item{
            width: 20rem;
            font-size: 8rem;
        }
    </style>
</head>
<body>
    
    <div class="container">
        <div class="item" style="background-color: yellowgreen;">1</div>
        <div class="item" style="background-color: pink;">2</div>
        <div class="item" style="background-color: white;">3</div>
        <div class="item" style="background-color: plum;">4</div>
        <div class="item" style="background-color: palegreen;">5</div>
        <div class="item" style="background-color: paleturquoise;">6</div>
    </div>
</body>
</html>

五、接下来的规划

根据博主所说,想要学习移动端的话可以了解如何制作微信小程序用到uni.app,还可以去学习Vue.js(渐进式
JavaScript 框架)

	OK,到此结束了(累瘫Zzz)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值