h5+css怎么制作一个简单的新闻网页

首先,我们先看看制作出来的页面效果:

        在这个页面框架中,涉及到的有背景图片,插图,以及各种文字的排版,另外添加了一个水平导航栏。我相信这肯定是做页面最基础的几个元素了。但是在设计的过程中,我们将会遇到哪些问题和新的编程思路呢?

        (1)第一步,我们平铺背景图,可以使用到的方法是:1.在css设计中直接使用body{}来对图片进行设置。2.在<body>中也可以通过url的方式导入图片。在这里我采用的是第一种方式:

        (2)背景设置成功后,我们可以去下载好所需要的图片和新闻内容,进行排版。在排版过程中,我们可以先通过<p>标签,<br>标签和<hr/>标签来囊括全局。这样我们会看到一份全部居左浮动的效果。当我们想快速的将内容全部居中显示的时候,就可以用到css进行调整。

         ·在排版的过程中,我认为是可以有三种方式的。我们可以很明显的看到我们的新闻布局中是垂直分布,文字+图片+图注的格式。所以我们有三种方式可以去用。1.直接法:将所有的内容排列好,然后对于每个内容使用居中排列,采用css或h5调整文字/图像居中。如:text-align:center;如图:。2.使用块级元素<div>将整个页面作为上下两个板块。上版块做导航栏,下版块做内容,同时设置两个板块之间的间距,另外调整盒子的内边距和外边距。例如:将第二盒子的整体调整距顶部的距离。如图:。3.可以使用表格标签<table>来完成。我们可以先将内容一段文字+一张图片+一张图注分为一纵列。则为一行三列的格式。然后将内容以表单的形式写入。(这里不做展示,可自行研究)

        (3)当整体排版完成后,插入导航栏,这里使用的水平导航,我们可以先将导航内容设置为跳转链接,然后再对导航栏的格式做个整体优化。如图:

h5内容:

当完成这几个内容时,基本效果就成功了。但是,如果想要实现一个动态的情况,我认为还可以通过js来实现元素浮动,或者将导航链接换成按钮的形式。再采用js实现图片点击即放大或跳转的形式会更好,以及更加美观。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我可以为您提供一个简单的登陆界面示例代码。以下是 HTML 、CSS 和 JavaScript 代码: HTML 代码: ``` <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Login Page</title> <link rel="stylesheet" href="style.css"> </head> <body> <div class="login-box"> <h2>Login Here</h2> <form> <div class="user-box"> <input type="text" name="" required=""> <label>Username</label> </div> <div class="user-box"> <input type="password" name="" required=""> <label>Password</label> </div> <a href="#"> <span></span> <span></span> <span></span> <span></span> Submit </a> </form> </div> </body> </html> ``` CSS 代码: ``` * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: sans-serif; background: #f1f1f1; } .login-box { width: 400px; height: 500px; background: #fff; color: #000; top: 50%; left: 50%; position: absolute; transform: translate(-50%, -50%); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.5); padding: 70px 30px; border-radius: 20px; } .login-box h2 { margin: 0; padding: 0 0 20px; text-align: center; font-size: 30px; } .login-box .user-box { position: relative; } .login-box .user-box input { width: 100%; padding: 10px 0; font-size: 16px; margin-bottom: 30px; border: none; border-bottom: 1px solid #000; outline: none; background: transparent; } .login-box .user-box label { position: absolute; top: 0; left: 0; padding: 10px 0; font-size: 16px; color: #000; pointer-events: none; transition: 0.5s; } .login-box .user-box input:focus ~ label, .login-box .user-box input:valid ~ label { top: -20px; left: 0; color: #000; font-size: 12px; } .login-box a { display: inline-block; text-decoration: none; color: #000; background: #fff; padding: 10px 20px; font-size: 20px; border-radius: 20px; margin-top: 40px; position: relative; overflow: hidden; } .login-box a span { position: absolute; display: block; } .login-box a span:nth-child(1) { top: 0; left: -100%; width: 100%; height: 2px; background: linear-gradient(90deg, transparent, #000); animation: animate1 1s linear infinite; } @keyframes animate1 { 0% { left: -100%; } 50%, 100% { left: 100%; } } .login-box a span:nth-child(2) { top: -100%; right: 0; width: 2px; height: 100%; background: linear-gradient(180deg, transparent, #000); animation: animate2 1s linear infinite; animation-delay: 0.25s; } @keyframes animate2 { 0% { top: -100%; } 50%, 100% { top: 100%; } } .login-box a span:nth-child(3) { bottom: 0; right: -100%; width: 100%; height: 2px; background: linear-gradient(270deg, transparent, #000); animation: animate3 1s linear infinite; animation-delay: 0.5s; } @keyframes animate3 { 0% { right: -100%; } 50%, 100% { right: 100%; } } .login-box a span:nth-child(4) { bottom: -100%; left: 0; width: 2px; height: 100%; background: linear-gradient(360deg, transparent, #000); animation: animate4 1s linear infinite; animation-delay: 0.75s; } @keyframes animate4 { 0% { bottom: -100%; } 50%, 100% { bottom: 100%; } } .login-box a:hover span { animation: none; } .login-box a:hover span:nth-child(1) { left: 0; } .login-box a:hover span:nth-child(2) { top: 0; } .login-box a:hover span:nth-child(3) { right: 0; } .login-box a:hover span:nth-child(4) { bottom: 0; } ``` JavaScript 代码: ``` const inputs = document.querySelectorAll(".user-box input"); function addClass() { let parent = this.parentNode; parent.classList.add("focus"); } function removeClass() { let parent = this.parentNode; if (this.value == "") { parent.classList.remove("focus"); } } inputs.forEach(input => { input.addEventListener("focus", addClass); input.addEventListener("blur", removeClass); }); ``` 这段代码将会渲染一个登陆框,包含输入用户名和密码的文本框,以及一个提交按钮。CSS 代码将添加一些样式,而 JavaScript 代码将帮助我们在文本框获得焦点和失去焦点时添加或删除一个类名,以便更好地控制样式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值