Web开发 01

先放一下自己写的手敲的第一个网站代码!~虽然很简单但还是有点成就感!!开心😊

<!DOCTYPE html>
<html><head><title>Title!</title><link rel = "stylesheet"href= "style.css"/> </head><body><h1>Heading!</h1><p>Paragrah!</p></body>
</html>
h1{color: blueviolet;
}
p {color: aquamarine;font-family: Arial, Helvetica, sans-serif;
}

1 html和css的链接

Q:这个css链接是另外自己写一个文件是不是?

A:

是的,在你提供的 hello.html 代码里,<link rel="stylesheet" href="style.css" /> 这行代码的作用是链接外部 CSS 文件,style.css 是需要你自己另外创建的一个独立文件,用来编写 CSS 样式规则,从而对 hello.html 里的 HTML 元素进行样式美化 。比如你想设置 h1 标签的颜色、p 标签的字体大小等样式,就可以在 style.css 文件中编写对应的 CSS 代码 。

2 没颜色(标签不对应)

你的 style.css 里写了 .info 和 div 的样式,但 hello.html 里没对应 HTML 元素用这些类或标签 ,所以样式没生效。要让样式起作用,得在 hello.html 里添加对应的元素,比如:

html

预览

<!DOCTYPE html>
<html>
<head><title>Title!</title><link rel="stylesheet" href="style.css" />
</head>
<body><h1>Heading!</h1><p>Paragrah!</p><!-- 添加带 info 类的元素 --><p class="info">这行文字会应用 .info 样式</p><!-- 添加 div 元素 --><div>这行文字会应用 div 样式</div>
</body>
</html>

这样浏览器渲染时,能匹配到 style.css 里的选择器,文字就有对应的颜色和字体样式啦,保存修改后刷新页面就能看到效果。

啥意思?

你现在的 hello.html 里,HTML 结构有了,但要让 style.css 的样式生效,得给元素加上对应的类名或标签匹配 。简单说,就是让 style.css 里写的 .info(类选择器)、div(标签选择器)能找到 hello.html 里的元素,举个完整例子:

方法 1:给元素加类名 / 用对应标签

假设想让 h1 用 .info 样式、p 用 div 样式(虽然 p 不是 div,但可以调整 CSS 选择器,或者直接改 HTML 标签 ),先改 hello.html

html

预览

<!DOCTYPE html>
<html>
<head><title>Title!</title><!-- 引入外部样式,路径正确的话就能关联到 style.css --><link rel="stylesheet" href="style.css" /> 
</head>
<body><!-- 给 h1 加 info 类,匹配 style.css 里的 .info 选择器 --><h1 class="info">Heading!</h1> <!-- 把 p 改成 div 标签,匹配 style.css 里的 div 选择器;或者不改标签,改 CSS 选择器为 p --><div>Paragrah!</div> 
</body>
</html>

然后调整 style.css(如果不想改 HTML 标签,也可以把 div 选择器改成 p ,看你需求 ):

css

/* 匹配带 info 类的元素 */
.info { color: blueviolet;
}
/* 匹配 div 标签(如果 HTML 里是 p 标签,就把这里改成 p ) */
div { color: aquamarine;font-family: Arial, Helvetica, sans-serif;
}

方法 2:直接写 HTML 标签 / 类名对应的样式

如果你想简单点,直接控制 h1p 这些现有标签,也可以改 style.css 里的选择器,比如:

css

/* 直接选 h1 标签 */
h1 { color: blueviolet;
}
/* 直接选 p 标签 */
p { color: aquamarine;font-family: Arial, Helvetica, sans-serif;
}

这样 hello.html 不用改,保持原来的 h1p 标签,样式也能生效,因为 CSS 直接通过标签名选中了它们 。

总结一下,核心就是 HTML 元素的类名、标签名,要和 CSS 里的选择器对应上 ,这样样式才能 “找到” 元素并生效。你可以根据需求选方法,保存代码后刷新浏览器,就能看到颜色变化啦~

总结:

我知道了,其实就是要对应着 <h1>Heading!</h1> <p>Paragrah!</p>要修改的标签名字!

对哒,你理解得很到位啦!CSS 就是通过选择器(像标签选择器、类选择器、ID 选择器 等)去 “找” HTML 里对应的标签、类名、ID 的元素,然后给它们设置样式。

就拿你这代码来说,要是想改 h1 和 p 的样式,在 style.css 里可以直接用标签选择器,像这样:

css

h1 {color: red; /* 把 h1 文字改成红色 */font-size: 24px; /* 调整字体大小 */
}
p {color: blue; /* 把 p 文字改成蓝色 */line-height: 1.6; /* 调整行高 */
}

这样写,style.css 里的 h1 选择器就对应 hello.html 里的 <h1>Heading!</h1>p 选择器对应 <p>Paragrah!</p>,保存后刷新页面,就能看到样式变化啦,继续加油探索呀~

3 与git有关的一些配置收获的常识()

1. Git 身份配置

  • 用户名与邮箱的作用
    Git 提交时需要记录作者身份(user.name 和 user.email),用于版本历史追踪。
  • 全局设置命令(所有仓库生效):

    bash

    git config --global user.name "你的用户名"
    git config --global user.email "你的邮箱@example.com"
    
  • 仓库特定设置(仅当前仓库生效):
    去掉 --global 参数,在仓库目录下单独设置。
  • 查看已设置的值

    bash

    git config --global user.name
    git config --global user.email
    

2. 提交文件的基本流程

  1. 添加文件到暂存区

    bash

    git add 文件名          # 添加单个文件
    git add .              # 添加当前目录所有文件
    
  2. 提交暂存区的文件到本地仓库

    bash

    git commit -m "提交说明"  # 添加有意义的提交信息
    
  3. 常见错误处理
    • 若提示 Untracked files,需先执行 git add
    • 若提示 Author identity unknown,需配置 user.name 和 user.email

3. Git 基础概念

  • 工作区(Working Directory):你实际编辑文件的地方。
  • 暂存区(Staging Area):准备提交的文件缓存区,通过 git add 进入。
  • 本地仓库(Local Repository):通过 git commit 将暂存区内容提交到本地。
  • 远程仓库(Remote Repository):如 GitHub,通过 git push/pull 同步。

4. 其他实用命令

  • 查看提交历史

    bash

    git log
    
  • 查看仓库状态(检查文件修改 / 未追踪):

    bash

    git status
    

5. 最佳实践

  • 提交信息规范:使用清晰、简洁的描述(如 修复登录bug添加用户列表功能)。
  • 全局与局部配置:根据需求选择配置范围(全局适合个人统一身份,局部适合工作 / 个人项目区分)。
  • 关联远程仓库:若需推送到 GitHub,需先执行:

    bash

    git remote add origin 远程仓库URL
    git push -u origin main  # 首次推送需关联分支
    

这些是 Git 最基础但核心的操作,掌握后你可以完成日常开发的版本控制需求。如果需要深入学习,可以继续探索分支管理、合并冲突解决等进阶功能!

4 git和github项目同步的实践知识

一、初始化与关联远程仓库

  1. 本地仓库初始化
    通过 git init 在 VS Code 的项目文件夹中创建本地 Git 仓库(生成隐藏的 .git 文件夹,用于跟踪文件变化)。

  2. 关联 GitHub 远程仓库

    • 先在 GitHub 上创建一个同名空仓库(如 my-web-project,暂不勾选初始化文件,避免冲突)。
    • 通过命令 git remote add origin [GitHub仓库URL] 将本地仓库与远程仓库关联(origin 是远程仓库的默认别名)。
    • 用 git remote -v 验证关联是否成功(会显示远程仓库的 fetch 和 push 地址)。

二、分支与推送准备

  1. 设置主分支名称
    执行 git branch -M main 将本地默认分支重命名为 main(与 GitHub 远程仓库的默认分支名保持一致,避免冲突)。

三、提交本地文件(核心步骤)

  1. 提交的必要性
    只有本地仓库有提交记录(即保存了文件版本),才能推送到远程仓库。若未提交,会出现 error: src refspec main does not match any 错误。

  2. 提交流程

    • git add .:将当前文件夹下所有文件暂存(add 后文件进入待提交状态)。
    • git commit -m "提交说明":将暂存的文件正式提交到本地仓库(-m 后的文字需简要描述本次提交内容,如 “初始化项目”)。

四、推送到 GitHub 远程仓库

  1. 首次推送命令
    执行 git push -u origin main,将本地 main 分支推送到远程 origin 仓库的 main 分支。

    • -u 表示设置默认推送关联,后续推送可直接用 git push
  2. 推送失败的常见原因及解决

    • 本地无提交记录:按上述 “提交流程” 先添加并提交文件。
    • 远程仓库非空(如 GitHub 上勾选了初始化 README):需先拉取远程内容并合并,命令为 git pull origin main --allow-unrelated-histories,解决冲突后再推送。

五、终端工具说明

  • VS Code 的 CMD 终端 和 Git Bash 均可执行 Git 命令,区别仅在于终端本身的语法(如 CMD 用 dir 查看文件,Git Bash 用 ls),不影响 Git 功能。
  • 无需切换终端,保持使用 CMD 即可完成所有操作。

六、验证结果

推送成功后,刷新 GitHub 仓库页面,即可看到本地提交的文件(如 index.htmlcss 文件夹等),完成本地与远程仓库的同步。

通过以上步骤,就能实现从本地项目创建到 GitHub 远程同步的完整流程,后续开发中只需重复 “修改文件 → git add . → git commit -m "说明" → git push” 即可持续更新远程仓库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/89215.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/89215.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis 生产实战 7×24:容量规划、性能调优、故障演练与成本治理 40 条军规

&#xff08;一&#xff09;写在前面&#xff1a;为什么需要“军规” Redis 在测试环境跑得飞快&#xff0c;一到线上就“莫名其妙”抖动&#xff1b;大促前扩容 3 倍&#xff0c;成本却翻 5 倍&#xff1b;一次主从切换&#xff0c;缓存雪崩导致下游 DB 被打挂&#xff1b;开发…

【DOCKER】综合项目 MonitorHub (监控中心)

文章目录1、项目架构图1.1 架构组件2、实际实施2.1 安装docker2.2 编写dockerfile文件2.2.1 Prometheus2.2.2 node_exporter2.2.3 nginxvts模块2.2.4 nginx_exporeter 服务发现文件2.2.5 maridb dockerfile文件2.2.6 镜像总数2.3 具体操作2.3.1 Prometheus组件2.3.2 nginx组件2…

Java List 集合详解:从基础到实战,掌握 Java 列表操作全貌

作为一名 Java 开发工程师&#xff0c;你一定在项目中频繁使用过 List 集合。它是 Java 集合框架中最常用、最灵活的数据结构之一。无论是从数据库查询出的数据&#xff0c;还是前端传递的参数列表&#xff0c;List 都是处理这些数据的首选结构。本文将带你全面掌握&#xff1a…

SGMD辛几何模态分解 直接替换Excel运行包含频谱图相关系数图 Matlab语言!

SGMD辛几何模态分解 直接替换Excel运行包含频谱图相关系数图 Matlab语言算法近几年刚提出&#xff0c;知网还没几个人用&#xff0c;你先用&#xff0c;你就是创新&#xff01;算法新颖小众&#xff0c;用的人很少&#xff0c;包含分解图、频谱图、相关系数图&#xff0c;效果如…

Oracle数据泵详解——让数据迁移像“点外卖”一样简单​

​今天我想和大家聊一个数据库领域的“万能搬运工”——Oracle数据泵&#xff08;Data Pump&#xff09;​。相信很多人都有过这样的经历&#xff1a;业务要上线新系统&#xff0c;得把旧库的数据搬到新环境&#xff1b;或者领导突然要一份3年前的历史数据&#xff0c;可不能影…

Leetcode 03 java

爬楼梯算法现在只看明白动态规划&#xff0c;也没有很难哟&#xff01;&#xff01;题目70. 爬楼梯假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f;java题解class Solution {public int climbStairs(…

怎么删除 wps 的右键菜单

打开 WPS 点击 WPS Office 选项卡&#xff0c;点击右侧全局配置》配置和修复工具点击高级功能定制下的都可以关闭和隐藏点击确定就可以了。

C++:list

一&#xff0c;list的介绍1&#xff0c;list初步&#xff08;1&#xff09;list是 C 标准模板库 (STL) 中的一个双向链表容器。它允许在常数时间内进行任意位置的插入和删除操作&#xff0c;但不支持随机访问。&#xff08;2&#xff09;list容器的底层数据结构为带头双向循环链…

深入理解Collections.addAll方法

文章目录深入理解Collections.addAll方法概述方法定义基本用法1. 向List添加元素2. 向Set添加元素3. 添加数组元素与传统add方法的比较使用传统add方法使用Collections.addAll性能考虑注意事项实际应用场景与Collection.addAll的区别最佳实践总结深入理解Collections.addAll方法…

CISP-PTE 练习题(完整一套)

目录 1、SQL注入 2、文件上传 3、文件包含 4、代码审计 5、命令执行 6、端口扫描 7、sql 写 webshell 8、3389 远程桌面利用 1、SQL注入 sqllabs-less-24 二次注入 2、文件上传 没有对文件后缀进行检测&#xff0c;但是对文件类型有检测&#xff0c;需要使用图片头绕…

Vue3入门-计算属性+监听器

&#x1f3e0;个人主页&#xff1a;Yui_ &#x1f351;操作环境&#xff1a;vscode\node.js &#x1f680;所属专栏&#xff1a;Vue3 文章目录1. 计算属性1.1 computed函数1.2 计算属性VS普通函数1.3 计算属性的完整写法2. 监听器3.总结1. 计算属性 计算属性&#xff08;compu…

Linux Swap区深度解析:为何禁用?何时需要?

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录前言一、Swap区&#xff1a;Linux的"内存救生圈"二、为什么要禁用Swap&#xff1f;性能的隐形杀手三、何时应该使用Swap&#xff1f;不可或缺的场景四、如…

用TensorFlow进行逻辑回归(三)

逻辑回归Logistic regression这个脚本展示如何用TensorFlow求解逻辑回归。 ()ysigmoid(Axb)我们使用低出生重量数据,特别地:y 0 or 1 low birth weightx demographic and medical history dataimport matplotlib.pyplot as pltimport numpy as npimport tensorflow as tfimp…

mingw 编译 assimp v6.0.2 解决编译报错

mingw 编译 assimp v6.0.2 理论上看这个就能满足&#xff1a;在Windows下使用CMakeMinGW64编译Assimp库 环境变量问题 i386 architecture of input file CMakeFiles\assimp.dir/objects.a(assimp.rc.obj)’ is incompatible with i386:x86-64 output collect2.exe: error: ld r…

Windows 11清理C盘方法大全:磁盘清理/禁用休眠/系统还原点/优化大师使用教程

Windows 11清理C盘方法1. 使用磁盘清理工具步骤&#xff1a;按 Win S 搜索“磁盘清理”&#xff0c;打开工具。选择C盘&#xff0c;点击“确定”。勾选需要清理的文件类型&#xff08;如临时文件、系统错误内存转储等&#xff09;&#xff0c;点击“确定”。确认删除操作&…

Rabbitmq Direct Exchange(直连交换机)多个消费者,配置相同的key ,队列,可以保证只有一个消费者消费吗

思考可以保证消费不被重复消费&#xff0c;因为通过轮询一个消息只会投递给一个消费者。但是不是一个消费者消费&#xff0c;而是多个轮询消费在 RabbitMQ 中&#xff0c;如果多个消费者&#xff08;Consumers&#xff09;同时订阅 同一个队列&#xff08;Queue&#xff09;&am…

设计模式是什么呢?

1.掌握设计模式的层次第一层&#xff1a;刚刚学编程不久&#xff0c;听说过什么是设计模式。第二层&#xff1a;有很长时间的编程经验&#xff0c;自己写过很多代码&#xff0c;其中用到了设计模式&#xff0c;但是自己不知道。第三层&#xff1a;学习过设计模式&#xff0c;发…

ThreadLocal使用详解-从源码层面分析

从demo入手看效果 代码Demostatic ThreadLocal tl1 new ThreadLocal();static ThreadLocal tl2 new ThreadLocal();static ThreadLocal tl3 new ThreadLocal();public static void main(String[] args) {tl1.set("123");tl2.set("456");tl3.set("4…

CPO:对比偏好优化—突破大型语言模型在机器翻译中的性能边界

温馨提示&#xff1a; 本篇文章已同步至"AI专题精讲" CPO&#xff1a;对比偏好优化—突破大型语言模型在机器翻译中的性能边界 摘要 中等规模的大型语言模型&#xff08;LLMs&#xff09;&#xff0c;如参数量为 7B 或 13B 的模型&#xff0c;在机器翻译&#xff0…

执行shell 脚本 如何将日志全部输出到文件

在执行 Shell 脚本时&#xff0c;如果需要将 所有输出&#xff08;包括标准输出 stdout 和错误输出 stderr&#xff09; 重定向到日志文件&#xff0c;可以使用以下方法&#xff1a;方法 1&#xff1a;直接重定向&#xff08;推荐&#xff09; /appdata/mysql_backup_dump.sh &…