【手把手】制作一个简单的HTML网页

【手把手】制作一个简单的HTML网页新建一个html文件:我要给body添加一些样式,就在head元素上挂载一个style元素。然后,写样式表:效果:这样的话,我们就可以看到body部分了。现在,我给body添加一点padding。页面上看不出区别,让我们打开F12,看一下现在的body变成了什么样子。示意图:从图中可以看出,body元素分为三层,最里面的一层,就是520×500的那部分,这个叫做内部真实空间,也就是说,你可以在里面添加其他元素,比如div元素,p元素,a元素等等。然后中间的一层就是paddin

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前些天发现了一个巨牛的人工智能学习博客,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转

新建一个html文件:

1488713605137007396.png

我要给body添加一些样式,就在head元素上挂载一个style元素。

1488713655277049231.png

然后,写样式表:

1488714003902054281.png

效果:

1488714070605004548.png

这样的话,我们就可以看到body部分了。现在,我给body添加一点padding。

1488714153418019891.png

页面上看不出区别,让我们打开F12,看一下现在的body变成了什么样子。

1488714230777074058.png

示意图:

1488714254871088416.png

从图中可以看出,body元素分为三层,最里面的一层,就是520 x 500的那部分,这个叫做内部真实空间,也就是说,你可以在里面添加其他元素,比如div元素,p元素,a元素等等。然后中间的一层就是padding了,如果你没有加padding,那么这一层就相当于一层薄薄的保鲜膜,其实它没有厚度,就是0px。最外面的一层就是border,在我们这个例子中,body的border部分就只有2px,薄薄的一层。现在,我给body加一个背景色:

1488714627059016444.png

1488714814074059044.png

奇怪的是,怎么外面也变成orange了?外面一层是什么啊,是不是html元素啊,那么我们给html元素加一个白色的背景。

1488714899480010892.png

效果:

1488714887918013609.png

OK,我们接下来在body元素上挂载一个div元素。

1488715075871007810.png

注意哦,我现在给这个div元素绑定了一个class属性,属性值叫”wrap”,这个class就叫做类,多个元素都可以绑定一个相同的class,通过这个class,我们可以设置一些通用的样式表。以后,但凡是绑定了这个class的元素,都能够拥有相同的样式效果。

现在,我给wrap添加一些样式:

1488715421043034450.png

注意哦,给class属性设置样式的时候,前面要加一个. ,在上一讲中,我们还说过,给id属性设置样式的时候,前面要加一个#,一样的意思,反正就是这么规定的。

效果:

1488715526855048143.png

我现在把高度改成100%,那么就会自动沾满父容器,也就是这里的body

1488715623855015561.png

效果:

1488715635434016310.png

那么,蓝色的部分,就是body最里面的那一层,我称之为内部真实空间。中间橘黄色的一层就是padding,最外面那一层薄薄的边界就是border,明白了吗?

好的,接下来开始今天的课程,我们来做一个简单的小页面。

1488715948965055477.png

我已经把图片都拿过来了。

index.html里面是这样子的:

1488715991418057077.png

接下来,我把必要的元素都放进去。

1488776257730006639.png

OK,我们一个一个来说,首先是h1元素,这个就和word一样的,属于标题元素,h1,就是最大的那种标题。接下来看img元素,这个元素的使用频率是非常高的,现在的网页几乎不可能说没有img元素的,这一点要明确。img元素有一个alt属性,它的意思就是说,当我鼠标画上这张的时候,会有一个小提示。width属性,这个不用多说了吧,设置图片的宽度。src属性,就是这张图片的地址,在我们这个项目中,图片被放在了上级目录的img文件夹下,所以,…/ 的意思就是去上级目录,这个属于相对路径,相对于当前文件的路径。在这段代码中,其他元素应该都很好理解了。p元素表示里面的文字是一个段落,h2元素就是二级标题,这些元素都是块级元素。还记得块级元素是什么意思吗?对了,它是不是会默认占满一整行啊。以这个例子来说,他们的父元素就是body,所以,他们会默认占满body的宽度。让我们来看一下效果吧。

把项目跑起来:

1488776433543094725.png

访问:http://localhost/Base/ch03/index.html

1488776453121062176.png

哎呀,图片没有显示,这是怎么回事呢,不要急,我们再来看一下目录结构:

1488776481574050882.png

看到了吗,同学们,我们的index.html页面和img文件夹是不是平级的呀?而我们的代码是这样写的:

水果蛋糕
…/ 表示退到上一个目录,也就是这里的ch03文件夹所在的目录:

1488776576246064097.png

这样吧,我把文件夹都闭合了。

1488776608262079425.png

ch03文件夹所在的目录是哪里呢,是不是WebContent目录呀?那么,在这个目录下,有没有一个叫做img的文件夹呢,是不是没有呀?所以,我们这里就不需要写…/了。直接把…/去掉:

1488776668949068859.png

刷新页面:

1488776698043074666.png

这样的话,图片是不是就显示出来呀?好的,其实,我们这种src连接的路径,叫做相对路径,在你们学习的过程中,或者从网上,或者从书本上,是不是还听说过一个名词叫做绝对路径啊?那到底什么是绝对路径呢,在本文中,我就给你解释清楚,到底什么是绝对路径?现在,我给img的前面加一个反斜杠:

1488776827465048647.png

大伙猜一猜,如果我再次刷新页面,图片能不能显示出来呢?好的,见证奇迹的时刻到了,我刷~

1488776880949024993.png

图片是不是又没有了呀?让我们打开F12,发现报错了。

1488776920277080610.png

他来了个404错误,404就是找不到资源,也就是说找不到图片。我们看一下,他去哪里找的:http://localhost/img/1.jpg 。看不出来?那我再写一点东西,你自己猜一下,前面这个反斜杠是什么意思。

1488777248574069439.png

刷新一下:

1488777262527032973.png

图片是不是又出来了呀,这个就叫做绝对路径,他和相对路径的区别就是,前面要加一个反斜杠。只要我加了反斜杠,浏览器就会认为我这个是绝对路径。Base是我们的项目发布名称,这个可以去server.xml里面改的。然后:

1488777409293021196.png

这一串,对于Web项目来说,他会去你的发布目录的根目录找,也就是WebContent。我们这个项目,是用eclipse生成的,我知道,你们很多人都喜欢用MyEclipse,那么发布目录是不是叫做WebRoot啊。其实啊,这只是一个文件夹的名字而已,我们也完全可以叫其他的名字。现在,我来手动改一下。

1488777543980013370.png

我现在把WebContent的名字改成了target,那么,会怎么样呢?我先卖个关子,接下来,我把tomcat关掉,重新启动一下,请问,同学们,你们觉得我还能不能访问到这个页面?

不好意思,启动报错:

1488777635199067610.png

java.lang.IllegalArgumentException: Document base E:\Java培训\software\eclipse-mars\workspace\Base\WebContent does not exist or is not a readable directory

它说E:\Java培训\software\eclipse-mars\workspace\Base\WebContent这个目录不存在或者不是一个可以读取的目录?我们刚才是不是把WebContent目录的名字改掉了呀,可是tomcat还是认为我们的发布目录名字叫做WebContent,所以就报错了。解决方法,就是手动改一下发布目录,打开server.xml,把那个目录给改掉:

1488778607012093773.png

然后,重启tomcat,访问http://localhost/Base/ch03/index.html

1488778649121078061.png

OK了吧,我只是给你们演示一下,各位就不要去改WebContent了,不然的话和服务器上的文件又不一样了。

这个页面有点美中不足的是,有一块溢出了:

1488778684418056324.png

可以看到,巧克力蛋糕的说明超出了body的范围,这是因为我们给body设置了一个固定的高度,解决办法就是把高度设置为auto(自适应)

1488779014637032171.png

1488779023512094203.png

稍微好看一点了,接下来,我要把body元素中所有的字体改成微软雅黑。

1488779103059047123.png

1488779147605045196.png

然后,给所有的元素来个居中显示:

1488779176527047007.png

1488779233434072177.png

现在,我又有一个需求,我希望把某些文字设置为不同的颜色,如何做呢?比如,我要把应季水果几个字变成粉红色。同学么,咋办?一个比较好的思路,就是专门用一个元素,把它包进去,比如:

1488779505199094000.png在这里,我们是不是只能用行内元素呀,因为如果我们用div,p等块级元素,那么是不是就要换行啦。虽然,我们可以给它设置dispaly:inline-block,或者inline,强制它不换行,可是那样的话,是不是很麻烦呀。所以,为什么不直接使用行内元素呢,比如说font。然后,我们可以给font绑定一个class属性。

1488779663809060722.png

然后在style元素中添加一个类选择器

1488779711496008955.png

刷新一下页面:

1488779733449033200.png

好像这个配色不太好看,那么我打开F12,选择这个font元素,重新配一个色(看好了,我就做这么一遍):

1488784757809084392.gif

然后,我们把颜色复制过来:

1488784781746040109.png

刷新页面:

1488784849902049768.png

这个就叫做配色,我们也可以给body重新配色:

1488784945277056368.gif

就是这么简单。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/164551.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Word 域代码:TOA(引文目录)域「建议收藏」

    Word 域代码:TOA(引文目录)域「建议收藏」 域代码:TOA(引文目录)域{TOC[Switches]}建立一个目录。TOC域根据标题级别、指定样式或由TC(目录项)域指定的项目来收集目录项。在使用“插入”菜单中“引用”子菜单中的“索引和目录”命令时,MicrosoftWord将插入TOC域。注释如果由TOC域创建的目录影响文档的分页,则可能需要再次更新域以得到正确的页码。开关/a标识符使

  • 从零搭建SpringCloud服务(史上最详细)

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:Anakki blog.csdn.net/qq_29519041/article/details/852382…

  • 测试用例设计的八大要素「建议收藏」

    测试用例设计的八大要素「建议收藏」1、测试用例的八大要素用例编号和其他编号一样,测试用例编号是用来唯一识别测试用例的编号,要求具有易识别和易维护性,用户可以很容易根据用例编号获取到相应用例的目的和作用,在系统测试用例中,编号的一般格式为A-B-C-D这几部分的作用分别如下:A:产品或项目类型,如CMS(内容管理系统)、CRM(客户关系管理系统)B:一般用来说明用例的属性,如ST(系统测试)、IT(集成测试)、UT(单元测试)C:测试需求的表示,说明该用例针对的需求点,可包括测试项和测试子项等,如文档管理、客户投诉信息管理等。

  • stm32驱动w25q程序(m127m128驱动不支持xp)

    1、W25Q128是华邦公司推出的一款SPI接口的NORFlash芯片,其存储空间为128Mbit,相当于16M字节。W25Q128可以支持SPI的模式0和模式3,也就是CPOL=0/CPHA=0和CPOL=1/CPHA=1这两种模式。2、写入数据时,需要注意以下两个重要问题:①、Flash写入数据时和EEPROM类似,不能跨页写入,一次最多写入一页,W25Q128的一页是256字节。写入数据一旦跨页,必须在…

  • vue业务组件封装_怎么去设计一个组件封装

    vue业务组件封装_怎么去设计一个组件封装vue:组件、组件化开发、父子组件传值。

  • 数电和模电的理解「建议收藏」

    数电和模电的理解「建议收藏」模电模拟信号:随处可见的自然信号都是模拟信号,模拟信号在时间上和取值上都是连续的,画出来就是一条连续的曲线,可以完全地“模拟”自然信号。模电是指用来对模拟信号进行传输、变换、处理、放大、测量和显示等工作的电路。模拟信号是指连续变化的电信号。模拟电路是电子电路的基础,它主要包括放大电路、信号运算和处理电路、振荡电路、调制和解调电路及电源等。数电数字信号:在时间上和取值上都是不连续的。数字信号存在“采样”,数字信号的值只能在采样点变化。数字信号存在“量化”,数字信号的值只

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号