我又写了一个网页登录界面。需要引用jqury.min.js。
源代码贴在下面了,也可以在我的github上下载。
效果图:
login.html

<!DOCTYPE html>
<html lang="en">
<head><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /><meta http-equiv="content-type" content="text/html;charset=utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><title>应用平台</title><link rel="stylesheet" type="text/css" href="style.css"><script type="text/javascript" src="jquery.min.js"></script><script type="text/javascript" src="vector.js"></script></head>
<body><nav class="header" id="head"><img class="Logo" src="LOGO.jpg"><h1 class="LogoName">应用平台</h1>
</nav>
<div id="container"><div id="output"><div class="containerT"><h1>登录</h1><form class="form" id="entry_form"><div ><img src="user_account.png" width="33px" height="33px" style="vertical-align:middle;"/><input  name="UserName" type="text" placeholder="请输入用户名" /></div><div><img src="user_password.png" width="33" height="33" style="vertical-align:middle;" /><input  name="Password" type="text" placeholder="请输入密码" /></div></form><div class="memoryPasswordBox"><input type="checkbox" class="checkInput" /><span class="tipSpan">记住密码</span></div><button class="button"  type="button" id="entry_btn">登录</button></div></div>
</div>
<div><script type="text/javascript">$(function(){Victor("container", "output");   //登录背景函数$("#entry_name").focus();$(document).keydown(function(event){if(event.keyCode==13){$("#entry_btn").click();}});});</script>
</div>
<div id="foot"  ><span class="titleSpan">有限公司</span>
</div></body>
</html>

style.css

* {margin: 0;padding: 0;font-size: 13px;font-family: 黑体
}html, body {width: 100%;height: 100%;background: #fff
}#head{height: 90px;
}
.Logo{width: 90px;height: 90px;vertical-align: middle;
}.LogoName {width: 90%;font-family: 华文行楷;white-space: nowrap; /* 不换行*/overflow: hidden; /*超出部分隐藏*/font-size: 60px;color: #00BFFF;display: inline;position: absolute;top: 18px;
}#container {width: 100%;height: 80%;position: relative;left: 0;z-index: 999
}#output {width: 100%;height: 100%
}.containerT {width: 500px;height: 400px;text-align: center;position: absolute;top: 50%;left: 50%;margin: -150px 0 0 -200px;border-radius: 3px
}.containerT h1 {font-size: 35px;font-family: 华文行楷, Arial, sans-serif;font-weight: 500
}.memoryPasswordBox{}form {padding: 20px 0;position: relative;z-index: 2
}form input{-webkit-appearance: none;-moz-appearance: none;appearance: none;outline: 0;border: 1px solid rgba(255, 255, 255, .4);background-color: rgba(255, 255, 255, .2);width: 200px;border-radius: 10px;padding: 8px 15px;margin: 0 auto 10px;display: inline-block;text-align: center;font-size: 15px;-webkit-transition-duration: .25s;transition-duration: .25s;
}form input:hover {background-color: rgba(255, 255, 255, .4)
}form input:focus {background-color: #fff;width: 230px;color: #333
}
.tipSpan {font-size: 20px;font-family: 华文行楷;
}
.button {font-family: 华文行楷;background-color: #21a4ee;border: none;padding: 15px 32px;font-size: 16px;margin: 4px 2px;cursor: pointer;border-radius: 50%;
}
.button:hover {box-shadow: 0 12px 16px 0 rgba(0,0,0,0.24),0 17px 50px 0 rgba(0,0,0,0.19);
}#foot{background-color: #2e9bff;border:0;height:50px;width:100%;position: relative;
}
.titleSpan{position: absolute;top:20px;font-size: 20px;right:40%;leat:40%;text-align: center;display: block;
}

vector.js

CAV = {FRONT: 0, BACK: 1, DOUBLE: 2, SVGNS: "http://www.w3.org/2000/svg"};
CAV.Array = typeof Float32Array === "function" ? Float32Array : Array;
CAV.Utils = {isNumber: function (a) {return !isNaN(parseFloat(a)) && isFinite(a)}
};
(function () {for (var a = 0, b = ["ms", "moz", "webkit", "o"], c = 0; c < b.length && !window.requestAnimationFrame; ++c) window.requestAnimationFrame = window[b[c] + "RequestAnimationFrame"], window.cancelAnimationFrame = window[b[c] + "CancelAnimationFrame"] || window[b[c] + "CancelRequestAnimationFrame"];if (!window.requestAnimationFrame) window.requestAnimationFrame = function (b) {var c = (new Date).getTime(), f = Math.max(0, 16 - (c - a)), g = window.setTimeout(function () {b(c + f)}, f);a = c + f;return g};if (!window.cancelAnimationFrame) window.cancelAnimationFrame = function (a) {clearTimeout(a)}
})();
Math.PIM2 = Math.PI * 2;
Math.PID2 = Math.PI / 2;
Math.randomInRange = function (a, b) {return a + (b - a) * Math.random()
};
Math.clamp = function (a, b, c) {a = Math.max(a, b);return a = Math.min(a, c)
};
CAV.Vector3 = {create: function (a, b, c) {var d = new CAV.Array(3);this.set(d, a, b, c);return d}, clone: function (a) {var b = this.create();this.copy(b, a);return b}, set: function (a, b, c, d) {a[0] = b || 0;a[1] = c || 0;a[2] = d || 0;return this}, setX: function (a, b) {a[0] = b || 0;return this}, setY: function (a, b) {a[1] = b || 0;return this}, setZ: function (a, b) {a[2] = b || 0;return this}, copy: function (a, b) {a[0] = b[0];a[1] = b[1];a[2] = b[2];return this}, add: function (a, b) {a[0] += b[0];a[1] += b[1];a[2] += b[2];return this}, addVectors: function (a, b, c) {a[0] = b[0] +c[0];a[1] = b[1] + c[1];a[2] = b[2] + c[2];return this}, addScalar: function (a, b) {a[0] += b;a[1] += b;a[2] += b;return this}, subtract: function (a, b) {a[0] -= b[0];a[1] -= b[1];a[2] -= b[2];return this}, subtractVectors: function (a, b, c) {a[0] = b[0] - c[0];a[1] = b[1] - c[1];a[2] = b[2] - c[2];return this}, subtractScalar: function (a, b) {a[0] -= b;a[1] -= b;a[2] -= b;return this}, multiply: function (a, b) {a[0] *= b[0];a[1] *= b[1];a[2] *= b[2];return this}, multiplyVectors: function (a, b, c) {a[0] = b[0] * c[0];a[1] = b[1] * c[1];a[2] = b[2] * c[2];return this}, multiplyScalar: function (a, b) {a[0] *= b;a[1] *= b;a[2] *= b;return this}, divide: function (a, b) {a[0] /= b[0];a[1] /= b[1];a[2] /= b[2];return this}, divideVectors: function (a, b, c) {a[0] = b[0] / c[0];a[1] = b[1] / c[1];a[2] = b[2] / c[2];return this}, divideScalar: function (a, b) {b !== 0 ? (a[0] /= b, a[1] /= b, a[2] /= b) : (a[0] = 0, a[1] = 0, a[2] = 0);return this}, cross: function (a, b) {var c = a[0], d = a[1], e = a[2];a[0] = d * b[2] - e * b[1];a[1] = e * b[0] - c * b[2];a[2] = c * b[1] - d * b[0];return this}, crossVectors: function (a, b, c) {a[0] = b[1] * c[2] - b[2] * c[1];a[1] = b[2] * c[0] - b[0] * c[2];a[2] = b[0] * c[1] - b[1] * c[0];return this}, min: function (a, b) {a[0] < b && (a[0] = b);a[1] < b && (a[1] = b);a[2] < b && (a[2] = b);return this}, max: function (a, b) {a[0] > b && (a[0] = b);a[1] > b && (a[1] = b);a[2] > b && (a[2] = b);return this}, clamp: function (a, b, c) {this.min(a, b);this.max(a, c);return this}, limit: function (a, b, c) {var d = this.length(a);b !== null && d < b ? this.setLength(a, b) : c !== null && d > c && this.setLength(a, c);return this}, dot: function (a, b) {return a[0] * b[0] + a[1] * b[1] + a[2] * b[2]}, normalise: function (a) {return this.divideScalar(a, this.length(a))}, negate: function (a) {return this.multiplyScalar(a, -1)}, distanceSquared: function (a, b) {var c = a[0] - b[0], d = a[1] - b[1], e = a[2] - b[2];return c * c + d * d + e * e}, distance: function (a, b) {return Math.sqrt(this.distanceSquared(a, b))}, lengthSquared: function (a) {return a[0] * a[0] + a[1] * a[1] + a[2] * a[2]}, length: function (a) {return Math.sqrt(this.lengthSquared(a))}, setLength: function (a, b) {var c = this.length(a);c !== 0 && b !== c && this.multiplyScalar(a, b / c);return this}
};
CAV.Vector4 = {create: function (a, b, c) {var d = new CAV.Array(4);this.set(d, a, b, c);return d}, set: function (a, b, c, d, e) {a[0] = b || 0;a[1] = c || 0;a[2] = d || 0;a[3] = e || 0;return this}, setX: function (a, b) {a[0] = b || 0;return this}, setY: function (a, b) {a[1] = b || 0;return this}, setZ: function (a, b) {a[2] = b || 0;return this}, setW: function (a, b) {a[3] = b || 0;return this}, add: function (a, b) {a[0] += b[0];a[1] += b[1];a[2] += b[2];a[3] += b[3];return this}, multiplyVectors: function (a, b, c) {a[0] = b[0] * c[0];a[1] = b[1] * c[1];a[2] = b[2] * c[2];a[3] = b[3] * c[3];return this}, multiplyScalar: function (a, b) {a[0] *= b;a[1] *= b;a[2] *= b;a[3] *= b;return this}, min: function (a, b) {a[0] < b && (a[0] = b);a[1] < b && (a[1] = b);a[2] < b && (a[2] = b);a[3] < b && (a[3] = b);return this}, max: function (a, b) {a[0] > b && (a[0] = b);a[1] > b && (a[1] = b);a[2] > b && (a[2] = b);a[3] > b && (a[3] = b);return this}, clamp: function (a, b, c) {this.min(a, b);this.max(a, c);return this}
};
CAV.Color = function (a, b) {this.rgba = CAV.Vector4.create();this.hex = a || "#000000";this.opacity = CAV.Utils.isNumber(b) ? b : 1;this.set(this.hex, this.opacity)
};
CAV.Color.prototype = {set: function (a, b) {var a = a.replace("#", ""), c = a.length / 3;this.rgba[0] = parseInt(a.substring(c * 0, c * 1), 16) / 255;this.rgba[1] = parseInt(a.substring(c * 1, c * 2), 16) / 255;this.rgba[2] = parseInt(a.substring(c * 2, c * 3), 16) / 255;this.rgba[3] = CAV.Utils.isNumber(b) ? b : this.rgba[3];return this}, hexify: function (a) {a = Math.ceil(a * 255).toString(16);a.length === 1 && (a = "0" + a);return a}, format: function () {var a = this.hexify(this.rgba[0]), b = this.hexify(this.rgba[1]), c = this.hexify(this.rgba[2]);return this.hex = "#" +a + b + c}
};
CAV.Object = function () {this.position = CAV.Vector3.create()
};
CAV.Object.prototype = {setPosition: function (a, b, c) {CAV.Vector3.set(this.position, a, b, c);return this}
};
CAV.Light = function (a, b) {CAV.Object.call(this);this.ambient = new CAV.Color(a || "#FFFFFF");this.diffuse = new CAV.Color(b || "#FFFFFF");this.ray = CAV.Vector3.create()
};
CAV.Light.prototype = Object.create(CAV.Object.prototype);
CAV.Vertex = function (a, b, c) {this.position = CAV.Vector3.create(a, b, c)
};
CAV.Vertex.prototype = {setPosition: function (a, b, c) {CAV.Vector3.set(this.position, a, b, c);return this}
};
CAV.Triangle = function (a, b, c) {this.a = a || new CAV.Vertex;this.b = b || new CAV.Vertex;this.c = c || new CAV.Vertex;this.vertices = [this.a, this.b, this.c];this.u = CAV.Vector3.create();this.v = CAV.Vector3.create();this.centroid = CAV.Vector3.create();this.normal = CAV.Vector3.create();this.color = new CAV.Color;this.polygon = document.createElementNS(CAV.SVGNS, "polygon");this.polygon.setAttributeNS(null, "stroke-linejoin", "round");this.polygon.setAttributeNS(null, "stroke-miterlimit", "1");this.polygon.setAttributeNS(null, "stroke-width", "1");this.computeCentroid();this.computeNormal()
};
CAV.Triangle.prototype = {computeCentroid: function () {this.centroid[0] = this.a.position[0] + this.b.position[0] + this.c.position[0];this.centroid[1] = this.a.position[1] + this.b.position[1] + this.c.position[1];this.centroid[2] = this.a.position[2] + this.b.position[2] + this.c.position[2];CAV.Vector3.divideScalar(this.centroid, 3);return this}, computeNormal: function () {CAV.Vector3.subtractVectors(this.u, this.b.position, this.a.position);CAV.Vector3.subtractVectors(this.v, this.c.position, this.a.position);CAV.Vector3.crossVectors(this.normal, this.u, this.v);CAV.Vector3.normalise(this.normal);return this}
};
CAV.Geometry = function () {this.vertices = [];this.triangles = [];this.dirty = false
};
CAV.Geometry.prototype = {update: function () {if (this.dirty) {var a, b;for (a = this.triangles.length - 1; a >= 0; a--) b = this.triangles[a], b.computeCentroid(), b.computeNormal();this.dirty = false}return this}
};
CAV.Plane = function (a, b, c, d) {CAV.Geometry.call(this);this.width = a || 100;this.height = b || 100;this.segments = c || 4;this.slices = d || 4;this.segmentWidth = this.width / this.segments;this.sliceHeight = this.height / this.slices;var e, f, g, c = [];e = this.width * -0.5;f = this.height * 0.5;for (a = 0; a <= this.segments; a++) {c.push([]);for (b = 0; b <= this.slices; b++) d = new CAV.Vertex(e + a * this.segmentWidth, f - b * this.sliceHeight), c[a].push(d), this.vertices.push(d)}for (a = 0; a < this.segments; a++) for (b = 0; b < this.slices; b++) d = c[a + 0][b + 0], e = c[a + 0][b +1], f = c[a + 1][b + 0], g = c[a + 1][b + 1], t0 = new CAV.Triangle(d, e, f), t1 = new CAV.Triangle(f, e, g), this.triangles.push(t0, t1)
};
CAV.Plane.prototype = Object.create(CAV.Geometry.prototype);
CAV.Material = function (a, b) {this.ambient = new CAV.Color(a || "#444444");this.diffuse = new CAV.Color(b || "#FFFFFF");this.slave = new CAV.Color
};
CAV.Mesh = function (a, b) {CAV.Object.call(this);this.geometry = a || new CAV.Geometry;this.material = b || new CAV.Material;this.side = CAV.FRONT;this.visible = true
};
CAV.Mesh.prototype = Object.create(CAV.Object.prototype);
CAV.Mesh.prototype.update = function (a, b) {var c, d, e, f, g;this.geometry.update();if (b) for (c = this.geometry.triangles.length - 1; c >= 0; c--) {d = this.geometry.triangles[c];CAV.Vector4.set(d.color.rgba);for (e = a.length - 1; e >= 0; e--) f = a[e], CAV.Vector3.subtractVectors(f.ray, f.position, d.centroid), CAV.Vector3.normalise(f.ray), g = CAV.Vector3.dot(d.normal, f.ray), this.side === CAV.FRONT ? g = Math.max(g, 0) : this.side === CAV.BACK ? g = Math.abs(Math.min(g, 0)) : this.side === CAV.DOUBLE && (g = Math.max(Math.abs(g), 0)), CAV.Vector4.multiplyVectors(this.material.slave.rgba, this.material.ambient.rgba, f.ambient.rgba), CAV.Vector4.add(d.color.rgba, this.material.slave.rgba), CAV.Vector4.multiplyVectors(this.material.slave.rgba, this.material.diffuse.rgba, f.diffuse.rgba), CAV.Vector4.multiplyScalar(this.material.slave.rgba, g), CAV.Vector4.add(d.color.rgba, this.material.slave.rgba);CAV.Vector4.clamp(d.color.rgba, 0, 1)}return this
};
CAV.Scene = function () {this.meshes = [];this.lights = []
};
CAV.Scene.prototype = {add: function (a) {a instanceof CAV.Mesh && !~this.meshes.indexOf(a) ? this.meshes.push(a) : a instanceof CAV.Light && !~this.lights.indexOf(a) && this.lights.push(a);return this}, remove: function (a) {a instanceof CAV.Mesh && ~this.meshes.indexOf(a) ? this.meshes.splice(this.meshes.indexOf(a), 1) : a instanceof CAV.Light && ~this.lights.indexOf(a) && this.lights.splice(this.lights.indexOf(a), 1);return this}
};
CAV.Renderer = function () {this.halfHeight = this.halfWidth = this.height = this.width = 0
};
CAV.Renderer.prototype = {setSize: function (a, b) {if (!(this.width === a && this.height === b)) return this.width = a, this.height = b, this.halfWidth = this.width * 0.5, this.halfHeight = this.height * 0.5, this}, clear: function () {return this}, render: function () {return this}
};
CAV.CanvasRenderer = function () {CAV.Renderer.call(this);this.element = document.createElement("canvas");this.element.style.display = "block";this.context = this.element.getContext("2d");this.setSize(this.element.width, this.element.height)
};
CAV.CanvasRenderer.prototype = Object.create(CAV.Renderer.prototype);
CAV.CanvasRenderer.prototype.setSize = function (a, b) {CAV.Renderer.prototype.setSize.call(this, a, b);this.element.width = a;this.element.height = b;this.context.setTransform(1, 0, 0, -1, this.halfWidth, this.halfHeight);return this
};
CAV.CanvasRenderer.prototype.clear = function () {CAV.Renderer.prototype.clear.call(this);this.context.clearRect(-this.halfWidth, -this.halfHeight, this.width, this.height);return this
};
CAV.CanvasRenderer.prototype.render = function (a) {CAV.Renderer.prototype.render.call(this, a);var b, c, d, e, f;this.clear();this.context.lineJoin = "round";this.context.lineWidth = 1;for (b = a.meshes.length - 1; b >= 0; b--) if (c = a.meshes[b], c.visible) {c.update(a.lights, true);for (d = c.geometry.triangles.length - 1; d >= 0; d--) e = c.geometry.triangles[d], f = e.color.format(), this.context.beginPath(), this.context.moveTo(e.a.position[0], e.a.position[1]), this.context.lineTo(e.b.position[0], e.b.position[1]), this.context.lineTo(e.c.position[0], e.c.position[1]), this.context.closePath(), this.context.strokeStyle = f, this.context.fillStyle = f, this.context.stroke(), this.context.fill()}return this
};function Victor(container, anitOut) {if (!!document.createElement("canvas").getContext) {var t = {width: 1.5,height: 1.5,depth: 10,segments: 12,slices: 6,xRange: 0.8,yRange: 0.1,zRange: 1,ambient: "#525252",diffuse: "#A5A5A5",speed: 0.0002};var G = {count: 2,xyScalar: 1,zOffset: 100,ambient: "#1c8bff",diffuse: "#1c8bff",speed: 0.001,gravity: 1200,dampening: 0.95,minLimit: 10,maxLimit: null,minDistance: 20,maxDistance: 400,autopilot: false,draw: false,bounds: CAV.Vector3.create(),step: CAV.Vector3.create(Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1))};var m = "canvas";var E = "svg";var x = {renderer: m};var i, n = Date.now();var L = CAV.Vector3.create();var k = CAV.Vector3.create();var z = document.getElementById(container || "container");var w = document.getElementById(anitOut || "anitOut");var D, I, h, q, y;var g;var r;function C() {F();p();s();B();v();K(z.offsetWidth, z.offsetHeight);o()}function F() {g = new CAV.CanvasRenderer();H(x.renderer)}function H(N) {if (D) {w.removeChild(D.element)}switch (N) {case m:D = g;break}D.setSize(z.offsetWidth, z.offsetHeight);w.appendChild(D.element)}function p() {I = new CAV.Scene()}function s() {I.remove(h);D.clear();q = new CAV.Plane(t.width * D.width, t.height * D.height, t.segments, t.slices);y = new CAV.Material(t.ambient, t.diffuse);h = new CAV.Mesh(q, y);I.add(h);var N, O;for (N = q.vertices.length - 1; N >= 0; N--) {O = q.vertices[N];O.anchor = CAV.Vector3.clone(O.position);O.step = CAV.Vector3.create(Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1));O.time = Math.randomInRange(0, Math.PIM2)}}function B() {var O, N;for (O = I.lights.length - 1; O >= 0; O--) {N = I.lights[O];I.remove(N)}D.clear();for (O = 0; O < G.count; O++) {N = new CAV.Light(G.ambient, G.diffuse);N.ambientHex = N.ambient.format();N.diffuseHex = N.diffuse.format();I.add(N);N.mass = Math.randomInRange(0.5, 1);N.velocity = CAV.Vector3.create();N.acceleration = CAV.Vector3.create();N.force = CAV.Vector3.create()}}function K(O, N) {D.setSize(O, N);CAV.Vector3.set(L, D.halfWidth, D.halfHeight);s()}function o() {i = Date.now() - n;u();M();requestAnimationFrame(o)}function u() {var Q, P, O, R, T, V, U, S = t.depth / 2;CAV.Vector3.copy(G.bounds, L);CAV.Vector3.multiplyScalar(G.bounds, G.xyScalar);CAV.Vector3.setZ(k, G.zOffset);for (R = I.lights.length - 1; R >= 0; R--) {T = I.lights[R];CAV.Vector3.setZ(T.position, G.zOffset);var N = Math.clamp(CAV.Vector3.distanceSquared(T.position, k), G.minDistance, G.maxDistance);var W = G.gravity * T.mass / N;CAV.Vector3.subtractVectors(T.force, k, T.position);CAV.Vector3.normalise(T.force);CAV.Vector3.multiplyScalar(T.force, W);CAV.Vector3.set(T.acceleration);CAV.Vector3.add(T.acceleration, T.force);CAV.Vector3.add(T.velocity, T.acceleration);CAV.Vector3.multiplyScalar(T.velocity, G.dampening);CAV.Vector3.limit(T.velocity, G.minLimit, G.maxLimit);CAV.Vector3.add(T.position, T.velocity)}for (V = q.vertices.length - 1; V >= 0; V--) {U = q.vertices[V];Q = Math.sin(U.time + U.step[0] * i * t.speed);P = Math.cos(U.time + U.step[1] * i * t.speed);O = Math.sin(U.time + U.step[2] * i * t.speed);CAV.Vector3.set(U.position, t.xRange * q.segmentWidth * Q, t.yRange * q.sliceHeight * P, t.zRange * S * O - S);CAV.Vector3.add(U.position, U.anchor)}q.dirty = true}function M() {D.render(I)}function J(O) {var Q, N, S = O;var P = function (T) {for (Q = 0, l = I.lights.length; Q < l; Q++) {N = I.lights[Q];N.ambient.set(T);N.ambientHex = N.ambient.format()}};var R = function (T) {for (Q = 0, l = I.lights.length; Q < l; Q++) {N = I.lights[Q];N.diffuse.set(T);N.diffuseHex = N.diffuse.format()}};return {set: function () {P(S[0]);R(S[1])}}}function v() {window.addEventListener("resize", j)}function A(N) {CAV.Vector3.set(k, N.x, D.height - N.y);CAV.Vector3.subtract(k, L)}function j(N) {K(z.offsetWidth, z.offsetHeight);M()}C();}return J;
}

实战HTML:动画背景网站登录界面相关推荐

  1. qt登录界面跳转_每天10分钟,木辛老师带你实战慕课软件开发:登录界面开发第2课...

    软件实战开始,快速提供编程能力:通过实战,分析产品需求,梳理设计需求,提升项目分析和架构的能力.快点跟着木辛老师一起学习吧! 请点击右上角"关注"按钮关注我们哟:跟着木辛老师学习P ...

  2. java登陆界面背景_Java登录界面的实现(注册、登录、背景图片)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.java * 作者:常轩 * 微信公众号:Worldh ...

  3. jsp mysql做登入界面_用jsp实现网站登录界面的制作,并连接数据库

    这里介绍一下怎样连接数据库,并用jsp制作一个简单的登录界面 1.首先需要搭建好环境,有Tomcat,eslipse,jdk等,并配置好环境变量,并安装好数据库,这里我使用的数据库是mysql数据库, ...

  4. 微信小程序实战(一)---实现登录界面

    昨天小程序第一天公测,就下载个小程序自带IDE玩了玩,看了看API,撸出了个登录界面给大家分享下. 下面是主界面和代码. index.wxml <view class="contain ...

  5. ps设计网站登录界面教程

    今天我们将在Photoshop图像处理软件中学习怎么制作网站登录框及登录页面,网站登录设计对于现在大部分网站来说都是必须,而如何网站设计师们如何设计好一个网站登录输入框呢?下面看教程为你们解答,大家不 ...

  6. vue + laya+二次贝赛尔曲线 实现含有动画背景的登录页面

    1.在layabox上下载demo源码  修改得到自己想要的背景动画(也可以自己开发) https://github.com/layabox/layaair-demo/tree/master/h5/2 ...

  7. html实战例子: 简易的qq登录界面

    效果图: 代码: <!DOCTYPE html> <html lang="en"> <head><meta charset="U ...

  8. ps制作设计网站登录界面

    1.创建一个大小 是1280×1024像素的文件. 2.打开草的素材图,填满整个文件. 3. 现在选择圆角矩形工具(U),半径为10像素的形状 ,现在将填充不透明度21% 4.装备一个图案,将其填充到 ...

  9. 哔哩网站登录界面html代码,仿哔哩哔哩网页模板设计

    [实例简介] [实例截图] [核心代码] bilibili ├── Home.html ├── Login.html ├── Register.html ├── css │   ├── bootstr ...

  10. 模仿手机QQ以视频流背景的登录界面

    1. 思路:很简单,VideoView播放视频. 布局方式如下: <?xml version="1.0" encoding="utf-8"?> &l ...

最新文章

  1. linux文件 i节点结构,Linux 文件描述符 文件表项 i节点结构
  2. 让 QtWebkit 支持跨域CROS - nowboy的CSDN博客 - 博客频道 - CSDN.NET
  3. r语言读取csv文件赋值gamma_tidyfst vs pandas(1):csv文件读写
  4. python同步异步_python中Tornado的同步与异步I/O的介绍(附示例)
  5. 精通CSS+DIV基础总结(三)
  6. WOrd ,excel实现打印功能
  7. Harbor2.2.1配置(trivy扫描器、镜像签名)
  8. oracle 与sql serve 获取随机行数的数据
  9. vscode怎么全局搜索_VS Code 新版本发布!支持远程开发、同步设置等新特性
  10. 解决前端浏览器字体小于12px办法
  11. IOS开发之MapKit框架的使用
  12. android studio日记本源代码,效能日记本——随时回味过往点滴
  13. 1194. 24点游戏
  14. 通过ssh远程启动linux上的Qt界面程序
  15. 8个电脑小技巧让你在朋友圈秒杀众人!
  16. IDEA 离线安装插件
  17. 科技圈最具权势25大女工程师
  18. 复制模仿是成功最佳的捷径?
  19. 如何用程序加载/卸载sys驱动
  20. bridge cc2021|adobe bridge cc 2021中文直装版(文件资源管理器) v11.0.0.83

热门文章

  1. 141.PHP 对象赋值
  2. 3. Browser 对象 - Navigator 对象
  3. 第005讲 表单及表单控件,隐藏域
  4. TestComplete自动化测试视频教程
  5. Angular 8 发布
  6. Gym - 101190D Delight for a Cat
  7. QQ连连看 逆向分析外挂制作报告【脱壳ASPPack】【模拟点击】【内联HOOK】
  8. POJ 3264:Balanced Lineup(RMQ模板题)
  9. maven远程私服发布jar包
  10. Centos挂载windows共享文件夹