Maison interface Web tutoriel HTML 展示Html5强大之处:Canvas画个猴子_html/css_WEB-ITnose

展示Html5强大之处:Canvas画个猴子_html/css_WEB-ITnose

Jun 21, 2016 am 08:54 AM

Html5中的Canvas做出来的特效就是牛逼,分享给大家欣赏一下。

直接贴代码,保存即可查看效果。已亲测:

<!DOCTYPE html><html><head>    <meta charset="UTF-8" />    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />    <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />    <title>孙悟空</title>    <style>        body{text-align:center;padding-top:3em;}    </style></head><body>    <canvas width="650" height="478"></canvas>       <script>        (function(){            var cvs=document.querySelector("canvas"),            g=cvs.getContext("2d");            g.lineWidth=2;            //右臂            g.beginPath();            g.strokeStyle="#DE821B";            g.fillStyle="#FFDE00";            g.moveTo(261,337);            g.quadraticCurveTo(268,328,287,320);            g.lineTo(323,357);            g.quadraticCurveTo(281,415,243,377);            g.closePath();            g.fill();            g.stroke();            //身体            g.beginPath();            g.strokeStyle="#DE821B";            g.fillStyle="#FFDE00";            g.moveTo(86,265);            g.quadraticCurveTo(33,267,15,292);            g.lineTo(52,339);            g.quadraticCurveTo(88,328,101,341);            g.lineTo(92,336);            g.quadraticCurveTo(88,338,81,347);            g.bezierCurveTo(188,468,306,372,261,306);            g.closePath();            g.fill();            g.stroke();            //衣带            g.beginPath();            g.fillStyle="#000000";            g.moveTo(251,330);            g.quadraticCurveTo(241,369,139,384);            g.quadraticCurveTo(231,400,273,343);            g.closePath();            g.fill();            //右手            g.strokeStyle="#842C00";            g.fillStyle="#BA6830";            g.beginPath();            g.moveTo(15,291);            g.bezierCurveTo(-16,339,31,348,51,339);            g.fill();            g.stroke();            g.beginPath();            g.moveTo(51,339);            g.quadraticCurveTo(65,295,15,291);            g.closePath();             g.fill();            //左手            g.beginPath();            g.moveTo(287,320);            g.bezierCurveTo(370,283,377,363,322,356);            g.fill();            g.stroke();            g.beginPath();            g.moveTo(287,320);            g.quadraticCurveTo(291,349,322,356);            g.closePath();             g.fill();            //左脚            g.beginPath();            g.strokeStyle="#690203";            g.fillStyle="#000000";            g.moveTo(110,404);            g.quadraticCurveTo(57,440,113,453);            g.closePath();            g.fill();            g.stroke();            //右脚            g.beginPath();            g.moveTo(110,424);            g.bezierCurveTo(58,465,117,498,173,463);            g.closePath();            g.fill();            g.stroke();            //裙角            g.beginPath();            g.strokeStyle="#949591";            g.fillStyle="#D1D2D4";            g.moveTo(255,424);            g.quadraticCurveTo(242,436,222,437);            g.quadraticCurveTo(223,426,219,425);            g.quadraticCurveTo(231,417,255,424);            g.fill();            g.stroke()            g.closePath();            //左腿            g.beginPath();            g.strokeStyle="#650300";            g.fillStyle="#ED1B24";            g.moveTo(211,404);            g.quadraticCurveTo(245,467,166,467);            g.closePath();            g.fill();            g.stroke();            //右腿            g.beginPath();            g.moveTo(62,364);            g.quadraticCurveTo(45,427,127,433);            g.quadraticCurveTo(130,457,170,463);            g.quadraticCurveTo(203,442,194,403);            g.closePath();            g.fill();            g.stroke();            //裙摆            g.beginPath();            g.strokeStyle="#949591";            g.fillStyle="#FFFFFF";            g.moveTo(45,354);            g.quadraticCurveTo(174,413,246,410);            g.quadraticCurveTo(254,419,254,424);            g.quadraticCurveTo(226,414,204,438);            g.quadraticCurveTo(166,389,125,432);            g.quadraticCurveTo(102,400,66,403);            g.quadraticCurveTo(70,372,32,365);            g.quadraticCurveTo(36,360,45,354);            g.fill();            g.stroke();            g.closePath();            //裙            g.beginPath();            g.strokeStyle="#952C3D";            g.fillStyle="#EE707B";            g.moveTo(81,346);            g.quadraticCurveTo(142,418,224,398);            g.quadraticCurveTo(242,407,245,410);            g.quadraticCurveTo(221,410,206,424);            g.quadraticCurveTo(164,384,124,415);            g.quadraticCurveTo(114,396,79,394);            g.quadraticCurveTo(74,368,44,354);            g.quadraticCurveTo(64,343,83,346);            g.closePath();            g.fill();            g.stroke();            //黑斑            g.beginPath();            g.fillStyle="#000000";            g.moveTo(62,348);            g.bezierCurveTo(59,365,90,390,86,353);            g.lineTo(80,346);            g.quadraticCurveTo(69,345,62,348);            g.closePath();            g.fill();            g.beginPath();            g.moveTo(112,377);            g.quadraticCurveTo(114,380,132,388);            g.bezierCurveTo(114,397,88,386,112,377);            g.closePath();            g.fill();            g.beginPath();            g.moveTo(205,402);            g.quadraticCurveTo(212,401,226,398);            g.bezierCurveTo(245,406,196,420,205,403);            g.closePath();            g.fill();            //裙            g.beginPath();            g.strokeStyle="#952C3D";            g.fillStyle="#EE707B";            g.moveTo(106,395);            g.quadraticCurveTo(160,363,193,412);            g.quadraticCurveTo(160,389,125,414);            g.fill();            g.stroke();            g.closePath();            g.beginPath();            g.fillStyle="#000000";            g.moveTo(148,383);            g.quadraticCurveTo(164,384,177,396);            g.bezierCurveTo(153,405,140,382,148,383);            g.closePath();            g.fill();            //修整            g.beginPath();            g.moveTo(81,346);            g.quadraticCurveTo(48,345,31,365);            g.stroke();            g.closePath();            g.beginPath();            g.moveTo(228,399);            g.quadraticCurveTo(257,415,254,424);            g.stroke();            g.closePath();            //帽冠            g.beginPath();             g.strokeStyle="#DE821B";            g.fillStyle ="#DDA90C";            g.moveTo(40,137);            g.bezierCurveTo(-8,152,-12,225,34,222);            g.stroke();            g.closePath();            g.fill();            g.beginPath();            g.moveTo(38,137);            g.bezierCurveTo(0,152,4,194,32,202);            g.closePath();            g.fillStyle="#FFDE00";            g.fill();            //帽子外边            g.beginPath();            g.moveTo(290,53);            g.quadraticCurveTo(250,17,135,51);            g.bezierCurveTo(-5,105,5,270,102,268);            g.stroke();            g.closePath();            g.fillStyle="#DDA90C";            g.fill();            g.beginPath();            g.fillStyle="#FFDE00";            g.moveTo(290,54);            g.bezierCurveTo(258,19,115,35,72,95);                g.bezierCurveTo(75,95,3,207,100,227);            g.closePath();            g.fill();            //头巾            g.strokeStyle="#6B9C7F";            g.fillStyle="#B2DDC9";            g.beginPath();              g.moveTo(329,98);               g.bezierCurveTo(294,15,147,72,110,203);            g.fill();            g.stroke();            g.closePath();            g.beginPath();            g.fillStyle="#8DB2A4";            g.moveTo(247,62);            g.lineTo(261,72);            g.lineTo(280,70);            g.lineTo(262,58);            g.closePath();            g.fill();            //围巾            g.beginPath();            g.strokeStyle="#007CB2";            g.fillStyle="#4DC6E1";            g.moveTo(88,268);            g.bezierCurveTo(132,277,173,358,214,318);            g.quadraticCurveTo(185,337,185,352);            g.bezierCurveTo(221,333,235,354,252,342);            g.quadraticCurveTo(272,340,270,358);            g.quadraticCurveTo(301,333,269,318);            g.lineTo(280,325);            g.quadraticCurveTo(292,297,165,227);            g.fill();            g.stroke();            g.closePath();            g.beginPath();            g.lineTo(265,312);            g.quadraticCurveTo(285,350,250,344);            g.quadraticCurveTo(262,333,253,318);             g.closePath();            g.fill();            g.stroke();              //头            g.beginPath();            g.strokeStyle="#842C00";            g.fillStyle="#BA6830";            g.moveTo(351,141);            g.bezierCurveTo(313,-3,144,102,111,234);            g.bezierCurveTo(118,247,147,327,260,321);            g.stroke();            g.closePath();            g.fill();            //头阴影            g.beginPath();            g.fillStyle="#8B411F";            g.moveTo(316,83);            g.quadraticCurveTo(341,103,349,135);            g.quadraticCurveTo(338,120,337,119);            g.quadraticCurveTo(330,103,311,83);            g.fill();            g.closePath();            //头巾结            g.beginPath();            g.strokeStyle="#6B9C7F";            g.fillStyle="#B2DDC9";            g.moveTo(231,2);            g.quadraticCurveTo(245,75,311,78);            g.quadraticCurveTo(331,56,325,13);            g.quadraticCurveTo(316,16,303,5);            g.quadraticCurveTo(315,37,304,65);            g.quadraticCurveTo(263,58,264,2);            g.quadraticCurveTo(255,12,231,1);            g.quadraticCurveTo(235,61,301,78);            g.fill();            g.stroke();            g.closePath();            g.beginPath();            g.moveTo(287,57);            g.quadraticCurveTo(296,65,295,78);            g.quadraticCurveTo(315,85,315,80);            g.quadraticCurveTo(306,49,281,53);            g.stroke();            //g.closePath();            g.fill();            g.beginPath();            g.fillStyle="#8DB2A4";            g.moveTo(298,79);            g.quadraticCurveTo(322,88,311,70);            g.quadraticCurveTo(306,77,298,79);            g.fill();            g.closePath();            //耳朵            g.beginPath();            g.strokeStyle="#842C00";            g.fillStyle="#BA6830";            g.moveTo(127,207);            g.bezierCurveTo(62,164,36,281,135,268);            g.stroke();            g.closePath();            g.fill();            g.beginPath();            g.fillStyle="#95411D";            g.moveTo(123,236);            g.bezierCurveTo(92,203,64,250,122,236);            g.closePath();            g.fill();            g.beginPath();            g.moveTo(127,238);            g.lineWidth=1;            g.strokeStyle="#842C00";            g.quadraticCurveTo(104,220,88,225);            g.stroke();            //脸            g.beginPath();            g.moveTo(322,253);            g.strokeStyle="#842C00";            g.fillStyle="#FFFFFF";            g.lineWidth=2;            g.bezierCurveTo(276,235,376,197,348,135);            g.quadraticCurveTo(303,73,237,81);            g.quadraticCurveTo(203,93,170,129);            g.quadraticCurveTo(143,223,231,268);            g.bezierCurveTo(198,276,216,314,253,321);            g.quadraticCurveTo(279,319,314,302);            g.lineTo(317,294);            g.quadraticCurveTo(338,285,316,257);            g.closePath();            g.stroke();            g.fill();            //脸阴影            g.beginPath();            g.fillStyle="#CCD0D5";            g.moveTo(341,127);            g.quadraticCurveTo(348,132,349,139);            g.quadraticCurveTo(361,172,331,206);                g.lineTo(329,201);            g.quadraticCurveTo(358,159,339,126);            g.fill();            g.closePath();            //眉毛              g.beginPath();            g.moveTo(279,137);            g.strokeStyle="#096F30";            g.fillStyle="#5CA74A";            g.quadraticCurveTo(295,114,308,132);            g.bezierCurveTo(312,142,307,143,312,162);            g.bezierCurveTo(296,139,303,129,280,136);            g.closePath();            g.stroke();            g.fill();            //眼眶              g.beginPath();            g.moveTo(279,137);            g.strokeStyle="#B21D21";            g.fillStyle="#ED1B24";            g.lineWidth=1;            g.moveTo(321,253);            g.bezierCurveTo(302,242,309,234,331,207);            g.bezierCurveTo(279,109,198,173,235,228);            g.bezierCurveTo(259,269,290,239,325,271);            g.quadraticCurveTo(324,265,316,258);            g.fill();            g.stroke();            g.closePath();            //眼眶阴影            g.beginPath();            g.fillStyle="#B81214";            g.moveTo(328,202);            g.quadraticCurveTo(305,229,310,240);            g.quadraticCurveTo(311,229,332,207);            g.fill();            g.closePath();            //眼睛              g.beginPath();            g.moveTo(271,252);            g.strokeStyle="#FFDE00";            g.fillStyle="#FFFFFF";            g.bezierCurveTo(226,187,326,161,299,257);            g.stroke();            g.closePath();            g.stroke();            g.fill();            //眼球            g.beginPath();            g.fillStyle="#49494B";            g.moveTo(292,255);            g.bezierCurveTo(280,217,315,200,299,257);                g.closePath();            g.fill();            g.beginPath();            g.fillStyle="#000000";            g.moveTo(299,251);            g.bezierCurveTo(272,242,314,187,299,251);            g.closePath();            g.fill();            g.beginPath();            g.fillStyle="#FFFFFF";            g.moveTo(298,229);            g.bezierCurveTo(292,208,287,255,298,233);            g.closePath();            g.fill();            //嘴巴            g.beginPath();            g.strokeStyle="#6DAE5E";            g.moveTo(310,267);            g.bezierCurveTo(328,282,312,308,293,303);            g.stroke();            g.strokeStyle="#842C00";                g.moveTo(321,292);            g.bezierCurveTo(322,301,318,304,312,298);            g.stroke();            g.fill();            g.closePath();            //右手阴影            g.beginPath();            g.fillStyle="#97441E";            g.moveTo(8,331);            g.quadraticCurveTo(28,336,53,318);            g.quadraticCurveTo(53,328,50,339);            g.quadraticCurveTo(18,347,10,331);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(311,352);            g.quadraticCurveTo(326,346,338,354);            g.quadraticCurveTo(327,359,311,352);            g.fill();            g.closePath();            g.beginPath();            g.fillStyle="#DDA80C";            g.moveTo(54,318);            g.bezierCurveTo(77,303,137,338,107,347);            g.quadraticCurveTo(94,324,51,339);            g.quadraticCurveTo(54,326,54,318);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(107,347);            g.quadraticCurveTo(104,350,88,353);            g.lineTo(83,345);            g.quadraticCurveTo(85,341,91,337);            g.quadraticCurveTo(99,341,107,345);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(260,371);            g.quadraticCurveTo(277,387,311,352);            g.quadraticCurveTo(316,356,322,356);            g.quadraticCurveTo(287,408,250,382);            g.fill();            g.closePath();            //云            g.strokeStyle="#43AEDA";            g.beginPath();            g.moveTo(337,297);            g.quadraticCurveTo(396,311,460,301);            g.bezierCurveTo(442,296,453,278,462,283);            g.moveTo(475,274);            g.bezierCurveTo(487,299,447,284,464,265);            g.bezierCurveTo(476,251,487,262,489,263);            g.bezierCurveTo(464,227,533,216,533,243);            g.bezierCurveTo(530,277,488,246,514,241);            g.moveTo(529,228);            g.bezierCurveTo(554,165,660,205,622,249);            g.bezierCurveTo(667,267,620,326,585,278);            g.bezierCurveTo(578,298,533,273,559,254);            g.bezierCurveTo(587,244,581,282,565,270);            g.moveTo(637,287);            g.bezierCurveTo(672,316,624,331,614,323);            g.moveTo(598,317);            g.bezierCurveTo(595,337,566,309,592,306);            g.bezierCurveTo(626,304,616,346,585,334);            g.bezierCurveTo(570,353,536,346,530,324);            g.bezierCurveTo(529,283,589,323,544,320);            g.moveTo(516,317);            g.bezierCurveTo(494,307,527,293,532,310);            g.moveTo(528,327);            g.bezierCurveTo(517,337,488,332,477,314);            g.moveTo(480,311);            g.quadraticCurveTo(425,319,337,297);            g.stroke();            g.closePath();            g.beginPath();            g.fillStyle="#C7E6F4";            g.moveTo(480,311);            g.quadraticCurveTo(425,319,337,297);            g.quadraticCurveTo(425,315,473,306);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(606,202);            g.quadraticCurveTo(642,216,623,250);            g.quadraticCurveTo(615,244,601,248);            g.quadraticCurveTo(632,228,606,202);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(630,254);            g.bezierCurveTo(663,282,609,315,589,281);            g.bezierCurveTo(589,292,650,299,630,254);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(646,296);            g.quadraticCurveTo(659,325,614,324);            g.lineTo(614,324);            g.quadraticCurveTo(648,319,646,296);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(573,328);            g.quadraticCurveTo(574,339,561,345);            g.quadraticCurveTo(578,343,585,334);            g.fill();            g.closePath();            g.beginPath();            g.moveTo(501,331);            g.quadraticCurveTo(539,325,523,302);            g.quadraticCurveTo(535,309,530,313);            g.quadraticCurveTo(529,309,528,326);            g.quadraticCurveTo(515,335,501,331);            g.fill();            g.closePath();        })();    </script></body></html>
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1663
14
Tutoriel PHP
1263
29
Tutoriel C#
1236
24
Comprendre HTML, CSS et JavaScript: un guide pour débutant Comprendre HTML, CSS et JavaScript: un guide pour débutant Apr 12, 2025 am 12:02 AM

WebDevelopmentReliesOnHTML, CSS, etjavascript: 1) HTMLSTRUCTURESCONTENT, 2) CSSSTYLESIT, et3) JavascriptAdddsInterActivity, Forming TheasisofmodernweBEBExperiences.

Les rôles de HTML, CSS et JavaScript: responsabilités de base Les rôles de HTML, CSS et JavaScript: responsabilités de base Apr 08, 2025 pm 07:05 PM

HTML définit la structure Web, CSS est responsable du style et de la mise en page, et JavaScript donne une interaction dynamique. Les trois exercent leurs fonctions dans le développement Web et construisent conjointement un site Web coloré.

HTML, CSS et JavaScript: outils essentiels pour les développeurs Web HTML, CSS et JavaScript: outils essentiels pour les développeurs Web Apr 09, 2025 am 12:12 AM

HTML, CSS et JavaScript sont les trois piliers du développement Web. 1. HTML définit la structure de la page Web et utilise des balises telles que, etc. 2. CSS contrôle le style de page Web, en utilisant des sélecteurs et des attributs tels que la couleur, la taille de la police, etc. 3. JavaScript réalise les effets dynamiques et l'interaction, par la surveillance des événements et les opérations DOM.

HTML: The Structure, CSS: The Style, Javascript: Le comportement HTML: The Structure, CSS: The Style, Javascript: Le comportement Apr 18, 2025 am 12:09 AM

Les rôles de HTML, CSS et JavaScript dans le développement Web sont: 1. HTML définit la structure de la page Web, 2. CSS contrôle le style de page Web, et 3. JavaScript ajoute un comportement dynamique. Ensemble, ils construisent le cadre, l'esthétique et l'interactivité des sites Web modernes.

L'avenir de HTML: évolution et tendances de la conception Web L'avenir de HTML: évolution et tendances de la conception Web Apr 17, 2025 am 12:12 AM

L'avenir de HTML est plein de possibilités infinies. 1) Les nouvelles fonctionnalités et normes comprendront plus de balises sémantiques et la popularité des composants Web. 2) La tendance de la conception Web continuera de se développer vers une conception réactive et accessible. 3) L'optimisation des performances améliorera l'expérience utilisateur grâce à des technologies de chargement d'image réactives et de chargement paresseux.

L'avenir de HTML, CSS et JavaScript: Tendances de développement Web L'avenir de HTML, CSS et JavaScript: Tendances de développement Web Apr 19, 2025 am 12:02 AM

Les tendances futures de HTML sont la sémantique et les composants Web, les tendances futures de CSS sont CSS-in-JS et CSShoudini, et les tendances futures de JavaScript sont WebAssembly et sans serveur. 1. La sémantique HTML améliore l'accessibilité et les effets de référencement, et les composants Web améliorent l'efficacité du développement, mais l'attention doit être accordée à la compatibilité du navigateur. 2. CSS-in-JS améliore la flexibilité de gestion du style mais peut augmenter la taille du fichier. CSShoudini permet le fonctionnement direct du rendu CSS. 3.WeBassembly optimise les performances de l'application du navigateur mais a une courbe d'apprentissage abrupte, et sans serveur simplifie le développement mais nécessite une optimisation des problèmes de démarrage à froid.

HTML vs CSS vs JavaScript: un aperçu comparatif HTML vs CSS vs JavaScript: un aperçu comparatif Apr 16, 2025 am 12:04 AM

Les rôles de HTML, CSS et JavaScript dans le développement Web sont: HTML est responsable de la structure du contenu, CSS est responsable du style et JavaScript est responsable du comportement dynamique. 1. HTML définit la structure et le contenu de la page Web via des balises pour assurer la sémantique. 2. CSS contrôle le style de page Web via des sélecteurs et des attributs pour le rendre beau et facile à lire. 3. JavaScript contrôle le comportement de la page Web via les scripts pour atteindre des fonctions dynamiques et interactives.

HTML: construire la structure des pages Web HTML: construire la structure des pages Web Apr 14, 2025 am 12:14 AM

HTML est la pierre angulaire de la construction de la structure des pages Web. 1. HTML définit la structure et la sémantique du contenu et les utilisations, etc. Tags. 2. Fournir des marqueurs sémantiques, tels que, etc., pour améliorer l'effet SEO. 3. Pour réaliser l'interaction de l'utilisateur via des balises, faites attention à la vérification de la forme. 4. Utilisez des éléments avancés tels que, combinés avec JavaScript pour obtenir des effets dynamiques. 5. Les erreurs courantes incluent des étiquettes non clôturées et des valeurs d'attribut non déposées et des outils de vérification sont nécessaires. 6. Les stratégies d'optimisation comprennent la réduction des demandes HTTP, la compression du HTML, l'utilisation de balises sémantiques, etc.

See all articles