-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrss2.xml
851 lines (350 loc) · 418 KB
/
rss2.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>御驾亲征</title>
<link>https://evrstr.cc/</link>
<image>
<url>https://evrstr.cc/icon.png</url>
<title>御驾亲征</title>
<link>https://evrstr.cc/</link>
</image>
<atom:link href="https://evrstr.cc/rss2.xml" rel="self" type="application/rss+xml"/>
<description></description>
<pubDate>Fri, 21 May 2021 10:17:35 GMT</pubDate>
<generator>http://hexo.io/</generator>
<item>
<title>PokeMMO 抓高 hp 个体值方法</title>
<link>https://evrstr.cc/posts/be7c.html</link>
<guid>https://evrstr.cc/posts/be7c.html</guid>
<pubDate>Fri, 21 May 2021 10:17:35 GMT</pubDate>
<description>POkeMMO抓高 hp 个体值方法</description>
<content:encoded><![CDATA[<h1 id="抓高-hp-个体值方法"><a href="#抓高-hp-个体值方法" class="headerlink" title="抓高 hp 个体值方法"></a>抓高 hp 个体值方法</h1><p>先放图。</p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://files.catbox.moe/m4y7x8.png"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://files.catbox.moe/s6kite.png"></p><h1 id="原理&计算方法"><a href="#原理&计算方法" class="headerlink" title="原理&计算方法"></a>原理&计算方法</h1><h2 id="原理"><a href="#原理" class="headerlink" title="原理"></a>原理</h2><p>利用天气伤害固定为 1/16,不受防御影响,且血量和性格无关。</p><h2 id="计算方法"><a href="#计算方法" class="headerlink" title="计算方法"></a>计算方法</h2><p>不想看这里的直接跳过即可,不影响使用</p><p>首先,确定你要抓的 pm 等级,然后算出满个体值时的血量,然后除以 16,得出一次天气造成的伤害量,然后看怪剩余血量百分比。<br>详细过程</p><figure class="highlight c#"><table><tr><td class="code"><pre><span class="line"><span class="comment">// 计算pm当前等级的血量,需要到游戏里的图鉴看种族值。</span></span><br><span class="line">Hp = (种族值*<span class="number">2</span> + 个体值 + (努力值/<span class="number">4</span>)) * 等级/<span class="number">100</span> + <span class="number">10</span> +等级; <span class="comment">//向下取整</span></span><br><span class="line">其他能力 = ((种族值*<span class="number">2</span> + 个体值 + (努力值/<span class="number">4</span>)) * 等级/<span class="number">100</span> + <span class="number">5</span>)*性格修正*特性修正; <span class="comment">//向下取整</span></span><br><span class="line"></span><br><span class="line"><span class="comment">// 计算一次天气伤害量</span></span><br><span class="line">D_Hp = Hp/<span class="number">16</span>; <span class="comment">//向下取整</span></span><br><span class="line"></span><br><span class="line"><span class="comment">// 计算剩余百分比</span></span><br><span class="line"></span><br><span class="line">百分比 = (Hp - D_Hp)/Hp; <span class="comment">//四舍五入,保留三位小数。</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><p>然后点怪的名字看剩余血量是不是符合就行,剩余一样就是高个体值了,低等级怪波动较大。</p><h1 id="软件使用说明"><a href="#软件使用说明" class="headerlink" title="软件使用说明"></a>软件使用说明</h1><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://files.catbox.moe/9s5q0d.png"></p><p>原创:<a href="https://www.bilibili.com/video/BV1UQ4y1d7rL">https://www.bilibili.com/video/BV1UQ4y1d7rL</a></p><h1 id="下载地址"><a href="#下载地址" class="headerlink" title="下载地址"></a>下载地址</h1><p><a href="https://cloud.evrstr.cc/s/04Ix">海马云盘</a><br>密码:x13j65</p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/PokeMMO/">PokeMMO</category>
<category domain="https://evrstr.cc/tags/PokeMMO/">PokeMMO</category>
<comments>https://evrstr.cc/posts/be7c.html#disqus_thread</comments>
</item>
<item>
<title>使用ffmpeg批量给视频加水印</title>
<link>https://evrstr.cc/posts/8589.html</link>
<guid>https://evrstr.cc/posts/8589.html</guid>
<pubDate>Sat, 03 Apr 2021 13:12:32 GMT</pubDate>
<description><p>直接给批处理文件吧,批处理文件和要加的水印<code>logo.png</code>放在同级目录,默认水印左下角。</p>
<p>ffmpeg 的参数我就不多说了,因为我也是边查边用的。</p>
<figure class="highlight</description>
<content:encoded><![CDATA[<p>直接给批处理文件吧,批处理文件和要加的水印<code>logo.png</code>放在同级目录,默认水印左下角。</p><p>ffmpeg 的参数我就不多说了,因为我也是边查边用的。</p><figure class="highlight bat"><table><tr><td class="code"><pre><span class="line"><span class="built_in">chcp</span> <span class="number">65001</span></span><br><span class="line">@<span class="built_in">echo</span> off </span><br><span class="line"><span class="built_in">setlocal</span> EnableDelayedExpansion</span><br><span class="line"><span class="comment">@REM 设置输入目录</span></span><br><span class="line"><span class="comment">@REM set inputDir=./input</span></span><br><span class="line"><span class="built_in">set</span> inputDir=./adobe教程</span><br><span class="line"><span class="comment">@REM 输入目录名字</span></span><br><span class="line"><span class="built_in">set</span> dirname=adobe教程</span><br><span class="line"><span class="built_in">set</span> num=<span class="number">1</span></span><br><span class="line"><span class="built_in">echo</span> <span class="built_in">start</span><span class="variable">!!!</span></span><br><span class="line"><span class="keyword">for</span> /r <span class="variable">%inputDir%</span> <span class="variable">%%i</span> <span class="keyword">in</span> (*.mp4) <span class="keyword">do</span> (</span><br><span class="line"> <span class="keyword">if</span> <span class="keyword">not</span> <span class="keyword">exist</span> "<span class="variable">!a:\%dirname%\=\output\!</span>" <span class="built_in">MD</span> "<span class="variable">!a:\%dirname%\=\output\!</span>" <span class="built_in">echo</span> 创建【"<span class="variable">!a:\%dirname%\=\output\!</span>"】目录</span><br><span class="line"> <span class="keyword">if</span> <span class="keyword">not</span> <span class="keyword">exist</span> "<span class="variable">!a:%dirname%=output!</span><span class="variable">%%~</span>nxi" ffmpeg -c:v h264_cuvid -i <span class="variable">%%i</span> -i ./logo.png -filter_complex overlay=x=<span class="number">0</span>:y=main_h-overlay_h -c:v h264_nvenc -b:v <span class="number">1</span>M -minrate <span class="number">1</span>M -maxrate <span class="number">1</span>M -bufsize <span class="number">128</span>k "<span class="variable">!a:%dirname%=output!</span><span class="variable">%%~</span>nxi" -y</span><br><span class="line"> <span class="built_in">echo</span> =============================================================================</span><br><span class="line"> <span class="built_in">echo</span> =======【<span class="variable">!a:%dirname%=output!</span><span class="variable">%%~</span>nxi】===========</span><br><span class="line"> <span class="built_in">echo</span> ========================第<span class="variable">!num!</span>个完成-【<span class="variable">%%~</span>nxi】==============================</span><br><span class="line"> <span class="built_in">echo</span> ==============================================================================</span><br><span class="line"> <span class="built_in">set</span> /A num+=<span class="number">1</span></span><br><span class="line">)</span><br><span class="line"><span class="built_in">pause</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1617456149201-1617456149193.png"></p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E6%97%A5%E5%B8%B8/">日常</category>
<category domain="https://evrstr.cc/tags/%E6%89%B9%E5%A4%84%E7%90%86/">批处理</category>
<category domain="https://evrstr.cc/tags/ffmpeg/">ffmpeg</category>
<category domain="https://evrstr.cc/tags/%E8%A7%86%E9%A2%91%E5%A4%84%E7%90%86/">视频处理</category>
<category domain="https://evrstr.cc/tags/%E6%B0%B4%E5%8D%B0/">水印</category>
<comments>https://evrstr.cc/posts/8589.html#disqus_thread</comments>
</item>
<item>
<title>python实现图片自动加水印</title>
<link>https://evrstr.cc/posts/3ac6.html</link>
<guid>https://evrstr.cc/posts/3ac6.html</guid>
<pubDate>Wed, 17 Mar 2021 14:43:24 GMT</pubDate>
<description><p>由于我用的是GitHub图层,配合utools的图床工具上传,但没有加水印功能,于是打算利用github action自动加水印。<br>代码如下:</p>
<figure class="highlight python"><table><tr><td</description>
<content:encoded><![CDATA[<p>由于我用的是GitHub图层,配合utools的图床工具上传,但没有加水印功能,于是打算利用github action自动加水印。<br>代码如下:</p><figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">from</span> PIL <span class="keyword">import</span> Image, ImageDraw, ImageFont</span><br><span class="line"></span><br><span class="line">img = Image.<span class="built_in">open</span>(<span class="string">"test.png"</span>)</span><br><span class="line">text = <span class="string">"御驾亲征"</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 字体 注意换成自己的字体</span></span><br><span class="line">font = ImageFont.truetype(<span class="string">"Shouxieti.ttf"</span>, <span class="number">75</span>)</span><br><span class="line"><span class="comment"># 将图片转为图层</span></span><br><span class="line">layer = img.convert(<span class="string">"RGBA"</span>)</span><br><span class="line"><span class="comment">#生成对应图片</span></span><br><span class="line">text_layer = Image.new(<span class="string">"RGBA"</span>, (img.size[<span class="number">0</span>]*<span class="number">2</span>,img.size[<span class="number">1</span>]*<span class="number">2</span>), (<span class="number">255</span>, <span class="number">255</span>, <span class="number">255</span>, <span class="number">0</span>))</span><br><span class="line">Image_draw = ImageDraw.Draw(text_layer) <span class="comment">#画图</span></span><br><span class="line"><span class="comment">#获取文本大小</span></span><br><span class="line">textsize_x, textsize_y = Image_draw.textsize(text, font=font)</span><br><span class="line">nums = <span class="built_in">max</span>(<span class="built_in">round</span>(layer.size[<span class="number">0</span>] / textsize_x), <span class="built_in">round</span>(layer.size[<span class="number">1</span>] / textsize_y))</span><br><span class="line">print(nums)</span><br><span class="line"><span class="keyword">for</span> i <span class="keyword">in</span> <span class="built_in">range</span> (<span class="number">1</span>,nums):</span><br><span class="line"> <span class="keyword">for</span> j <span class="keyword">in</span> <span class="built_in">range</span>(<span class="number">1</span>,nums):</span><br><span class="line"> <span class="comment">#设置文本文字位置</span></span><br><span class="line"> text_xy = (textsize_x*(i<span class="number">-1</span>)*<span class="number">1.5</span>,textsize_y*(j<span class="number">-1</span>)*<span class="number">2.5</span>)</span><br><span class="line"> <span class="comment"># 设置文本颜色和透明度位置</span></span><br><span class="line"> Image_draw.text(text_xy, text, font=font, fill=(<span class="number">255</span>, <span class="number">255</span>, <span class="number">255</span>, <span class="number">50</span>))</span><br><span class="line"><span class="comment"># 将新图层旋转45度后裁剪和图片一样大,新图层必须和图片一样大,否则无法合并</span></span><br><span class="line">text_layer = text_layer.rotate(<span class="number">45</span>)</span><br><span class="line">text_layer = text_layer.crop((text_layer.size[<span class="number">0</span>]/<span class="number">2</span> - img.size[<span class="number">0</span>]/<span class="number">2</span>, text_layer.size[<span class="number">1</span>]/<span class="number">2</span> - img.size[<span class="number">1</span>]/<span class="number">2</span>, text_layer.size[<span class="number">0</span>]/<span class="number">2</span> + img.size[<span class="number">0</span>]/<span class="number">2</span>, text_layer.size[<span class="number">1</span>]/<span class="number">2</span> + img.size[<span class="number">1</span>]/<span class="number">2</span>))</span><br><span class="line"></span><br><span class="line"><span class="comment"># 合并图层</span></span><br><span class="line">after = Image.alpha_composite(layer, text_layer)</span><br><span class="line">after.save(<span class="string">"output.png"</span>)</span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><p>效果看图吧,后面再出一篇利用github action自动加水印。</p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1615992390471-1615992390440-output.png"></p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/python/">python</category>
<category domain="https://evrstr.cc/tags/python/">python</category>
<comments>https://evrstr.cc/posts/3ac6.html#disqus_thread</comments>
</item>
<item>
<title>打造自己的CheatEngine修改器,避免部分游戏的检测</title>
<link>https://evrstr.cc/posts/dbff.html</link>
<guid>https://evrstr.cc/posts/dbff.html</guid>
<pubDate>Tue, 23 Feb 2021 04:02:24 GMT</pubDate>
<description><h1 id="介绍"><a href="#介绍" class="headerlink" title="介绍"></a>介绍</h1><p>Cheat</description>
<content:encoded><![CDATA[<h1 id="介绍"><a href="#介绍" class="headerlink" title="介绍"></a>介绍</h1><p>Cheat Engine是一款专注于游戏的修改器。它可以用来扫描游戏中的内存,并允许修改它们。它还附带了调试器、反汇编器、汇编器、变速器、作弊器生成、D3D hook工具、系统检查工具等。<br>但是,现在好多游戏都检测CE了,这对于我们找基址很不方便,这里给大家提供一下自己编译CheatEngine修改器的过程!</p><h1 id="第一步,准备工具及资源"><a href="#第一步,准备工具及资源" class="headerlink" title="第一步,准备工具及资源"></a>第一步,准备工具及资源</h1><p>github 地址:<a href="https://github.com/cheat-engine/cheat-engine" title="cheat-engine">CheatEngine</a></p><hr><ol><li><p>从这里下载 <a href="https://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2032%20bits/Lazarus%202.0.10/lazarus-2.0.10-fpc-3.2.0-win32.exe/download">Lazarus 32bit</a> 。将其安装到您具有完全访问权限的路径,例如“ D:\ Lazarus”</p></li><li><p>下载并安装 <a href="https://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2032%20bits/Lazarus%202.0.10/lazarus-2.0.10-fpc-3.2.0-cross-x86_64-win64-win32.exe/download">cross-x86_64-win64</a>插件,请使用相同的路径安装,例如“ D:\ Lazarus”(安装程序可以显示“文件夹存在”通知-单击“是/确定”)</p></li><li><p>进入 <a href="https://github.com/cheat-engine/cheat-engine/releases/">CheatEngine源码</a>,找到最新版 <code>Source code </code>源码下载。</p></li></ol><h1 id="第二步-设置Lazarus为中文显示"><a href="#第二步-设置Lazarus为中文显示" class="headerlink" title="第二步 设置Lazarus为中文显示"></a>第二步 设置Lazarus为中文显示</h1><p><strong>找到菜单栏 Tools -> Options -> Environment -> General ->Language 选择 Chinese[zh_CN] 然后重启Lazarus</strong></p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614053918847-Snipaste_2021-02-23_12-18-11.png"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614054037954-Snipaste_2021-02-23_12-20-13.png"></p><h1 id="第三步-设置及编译"><a href="#第三步-设置及编译" class="headerlink" title="第三步 设置及编译"></a>第三步 设置及编译</h1><h2 id="解压缩下载的源码并修改"><a href="#解压缩下载的源码并修改" class="headerlink" title="解压缩下载的源码并修改"></a>解压缩下载的源码并修改</h2><h3 id="找到MainUnit2文件"><a href="#找到MainUnit2文件" class="headerlink" title="找到MainUnit2文件"></a>找到MainUnit2文件</h3><ul><li>进入 <code>cheat-engine-7.2\Cheat Engine</code>目录</li><li>打开 <code>cheatengine.lpi</code></li><li>找到菜单栏 <code>查找 -> 在文件中查找</code> 输入<code>MainUnit2</code>点击查找</li><li>修改 ceversion cename</li></ul><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614054455395-Snipaste_2021-02-23_12-26-41.png"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614054561694-1614054561688.png"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614055389699-1614055389694.png"></p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614055693135-1614055693130.png"></p><h2 id="修改工程属性(这里只编译64位的)"><a href="#修改工程属性(这里只编译64位的)" class="headerlink" title="修改工程属性(这里只编译64位的)"></a>修改工程属性(这里只编译64位的)</h2><p><strong>点击菜单栏 工程 -> 工程选项</strong> 修改下面几项后点击确定<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614056372575-1614056372569.png"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614056418806-1614056418802.png"></p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614056485194-1614056485189.png"></p><blockquote><p>如果需要编译32位的看下图,建议64位和32位都构建一遍。</p></blockquote><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614056631796-1614056631793.png"></p><h2 id="编译"><a href="#编译" class="headerlink" title="编译"></a>编译</h2><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614056771437-1614056771433.png"></p><p>看编译信息,绿色的就是成功了,编译成功在源码下的<code>bin</code>目录下会有<strong>cheatengine-i386.exe</strong>(32位), <strong>cheatengine-x86_64.exe</strong>(64 位)</p><h1 id="运行"><a href="#运行" class="headerlink" title="运行"></a>运行</h1><p>双击 <code>cheatengine-x86_64.exe</code><br>如果要分享给别人,请把整个<code>bin</code>目录打包.<br>默认是英文,可以自行修改为中文</p><blockquote><p>自带中文翻译有些不太准确,不符合中文习惯, 可以在网上找其他的翻译文件或者自己翻译,语言文件在 <code>bin\languages</code>下<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614057018791-1614057018779.png"></p></blockquote><h1 id="注意事项"><a href="#注意事项" class="headerlink" title="注意事项"></a>注意事项</h1><blockquote><p>不要出现中文路径<br>以上只修改了程序名及窗口名字,你还可以自行修改,比如变量名或者版本号,这对于部分游戏防止检测CE还是有效的。</p></blockquote>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E6%B8%B8%E6%88%8F%E9%80%86%E5%90%91/">游戏逆向</category>
<category domain="https://evrstr.cc/tags/%E6%B8%B8%E6%88%8F%E9%80%86%E5%90%91/">游戏逆向</category>
<category domain="https://evrstr.cc/tags/CheatEngine/">CheatEngine</category>
<category domain="https://evrstr.cc/tags/CE/">CE</category>
<category domain="https://evrstr.cc/tags/%E4%BF%AE%E6%94%B9%E5%99%A8/">修改器</category>
<comments>https://evrstr.cc/posts/dbff.html#disqus_thread</comments>
</item>
<item>
<title>csgo方框透视-GDI绘制</title>
<link>https://evrstr.cc/posts/954b.html</link>
<guid>https://evrstr.cc/posts/954b.html</guid>
<pubDate>Mon, 22 Feb 2021 11:59:07 GMT</pubDate>
<description><h1 id="方框透视原理"><a href="#方框透视原理" class="headerlink" title="方框透视原理"></a>方框透视原理</h1><p>原理非常简单,找到人物世界坐标地址(包括自身) -&gt; 世界坐标转屏幕坐标 -&gt;</description>
<content:encoded><![CDATA[<h1 id="方框透视原理"><a href="#方框透视原理" class="headerlink" title="方框透视原理"></a>方框透视原理</h1><p>原理非常简单,找到人物世界坐标地址(包括自身) -> 世界坐标转屏幕坐标 -> GDI绘制。<br>原理简单,但实践起来却没有想象中那么简单。这第一步都需要花费不少时间。</p><p><strong>如果以下代码编译运行后不显示方框,应该是游戏更新导致一下三个地址变化,自己用ce慢慢找吧</strong></p><p><code>dwLocalPlayer</code>, <code>dwEntityList</code>, <code>dwViewMatrix</code></p><h1 id="代码"><a href="#代码" class="headerlink" title="代码"></a>代码</h1><figure class="highlight cpp"><table><tr><td class="code"><pre><span class="line"></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><Windows.h></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><sstream></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><math.h></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><iostream></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><TlHelp32.h></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><tchar.h></span></span></span><br><span class="line"></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><string></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string">"csgo.h"</span></span></span><br><span class="line"></span><br><span class="line"><span class="keyword">using</span> <span class="keyword">namespace</span> <span class="built_in">std</span>;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line">DWORD dwLocalPlayer = <span class="number">0xD8B2BC</span>; <span class="comment">//玩家本人基址</span></span><br><span class="line">DWORD dwEntityList = <span class="number">0x4DA2F44</span>;<span class="comment">//实体列表</span></span><br><span class="line">DWORD dwViewMatrix = <span class="number">0x4D94844</span>;<span class="comment">//视图矩阵</span></span><br><span class="line">DWORD m_dwBoneMatrix = <span class="number">0x26A8</span>;<span class="comment">//敌人视图矩阵</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line">DWORD zPosOffset = <span class="number">0x140</span>;<span class="comment">// z 坐标偏移</span></span><br><span class="line">DWORD yPosOffset = <span class="number">0x13C</span>;<span class="comment">// y 坐标偏移</span></span><br><span class="line">DWORD xPosOffset = <span class="number">0x138</span>;<span class="comment">// x 坐标偏移</span></span><br><span class="line">DWORD hPosOffset = <span class="number">0x110</span>;<span class="comment">// 高度偏移</span></span><br><span class="line">DWORD hpOffset = <span class="number">0x100</span>;<span class="comment">// 血量偏移地址</span></span><br><span class="line">DWORD m_iTeamNum = <span class="number">0xF4</span>;<span class="comment">//阵营标志</span></span><br><span class="line">DWORD m_bDormant = <span class="number">0xED</span>;<span class="comment">//实体是否移除偏移</span></span><br><span class="line">DWORD m_vecOrigin = <span class="number">0x138</span>;<span class="comment">//实体列表 x,y,z偏移地址</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line">HWNDhwndCSGO;</span><br><span class="line"><span class="comment">//client.dll</span></span><br><span class="line">DWORD gameModule;</span><br><span class="line"><span class="comment">//需要设置的初始化变量</span></span><br><span class="line">HDC HDC_Desktop;</span><br><span class="line"></span><br><span class="line"><span class="comment">//windef库定义的笔刷对象,用于绘图</span></span><br><span class="line">HBRUSH EnemyBrush;</span><br><span class="line"><span class="comment">//windef库定义的文字对象,用于绘画文字</span></span><br><span class="line">HFONT Font;</span><br><span class="line"><span class="comment">//目标窗口的矩形对象</span></span><br><span class="line">RECT m_Rect;</span><br><span class="line"><span class="comment">//目标窗口</span></span><br><span class="line">HWND TargetWnd;</span><br><span class="line"><span class="comment">//目标窗口代理</span></span><br><span class="line">HWND Handle;</span><br><span class="line"></span><br><span class="line"><span class="comment">//目标窗口矩形大小</span></span><br><span class="line">RECT windowRect;</span><br><span class="line"></span><br><span class="line">HANDLE handle;</span><br><span class="line">DWORD pid;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">//线的颜色</span></span><br><span class="line">COLORREF SnapLineCOLOR;</span><br><span class="line"><span class="comment">//文本的颜色</span></span><br><span class="line">COLORREF TextCOLOR;</span><br><span class="line"></span><br><span class="line"><span class="keyword">float</span> Matrix[<span class="number">16</span>];<span class="comment">//视图矩阵</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">//defining our vectors</span></span><br><span class="line"><span class="class"><span class="keyword">struct</span> <span class="title">Vec3</span></span></span><br><span class="line"><span class="class">{</span></span><br><span class="line"><span class="keyword">float</span> x, y, z;</span><br><span class="line">};</span><br><span class="line"></span><br><span class="line"><span class="class"><span class="keyword">struct</span> <span class="title">Vec4</span></span></span><br><span class="line"><span class="class">{</span></span><br><span class="line"><span class="keyword">float</span> x, y, z, w;</span><br><span class="line">};</span><br><span class="line"></span><br><span class="line"><span class="class"><span class="keyword">struct</span> <span class="title">Vec2</span></span></span><br><span class="line"><span class="class">{</span></span><br><span class="line"><span class="keyword">float</span> x, y;</span><br><span class="line">};</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">//设置绘画</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">SetupDrawing</span><span class="params">(HDC hDesktop, HWND handle)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="comment">//目标桌面</span></span><br><span class="line">HDC_Desktop = hDesktop;</span><br><span class="line"><span class="comment">//代理</span></span><br><span class="line">Handle = handle;</span><br><span class="line"><span class="comment">//创建一个正方体笔刷,颜色为红色</span></span><br><span class="line">EnemyBrush = CreateSolidBrush(RGB(<span class="number">255</span>, <span class="number">0</span>, <span class="number">0</span>));</span><br><span class="line"><span class="comment">//设置线的颜色为蓝色</span></span><br><span class="line">SnapLineCOLOR = RGB(<span class="number">0</span>, <span class="number">0</span>, <span class="number">255</span>);</span><br><span class="line"><span class="comment">//设置文本的颜色为绿色</span></span><br><span class="line">TextCOLOR = RGB(<span class="number">0</span>, <span class="number">255</span>, <span class="number">0</span>);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">//填充矩形</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">DrawFilledRect</span><span class="params">(<span class="keyword">int</span> x, <span class="keyword">int</span> y, <span class="keyword">int</span> w, <span class="keyword">int</span> h)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line">RECT rect = { x, y, x + w, y + h };</span><br><span class="line">FillRect(HDC_Desktop, &rect, EnemyBrush);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">//绘画目标的边框</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">DrawBorderBox</span><span class="params">(<span class="keyword">int</span> x, <span class="keyword">int</span> y, <span class="keyword">int</span> w, <span class="keyword">int</span> h, <span class="keyword">int</span> thickness)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"></span><br><span class="line">DrawFilledRect(x, y, w, thickness);</span><br><span class="line"></span><br><span class="line">DrawFilledRect(x, y, thickness, h);</span><br><span class="line"></span><br><span class="line">DrawFilledRect((x + w), y, thickness, h);</span><br><span class="line"></span><br><span class="line">DrawFilledRect(x, y + h, w + thickness, thickness);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">//绘画直线</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">DrawLine</span><span class="params">(<span class="keyword">float</span> StartX, <span class="keyword">float</span> StartY, <span class="keyword">float</span> EndX, <span class="keyword">float</span> EndY, COLORREF Pen)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="comment">//设置绘线的样式</span></span><br><span class="line">HPEN hNPen = CreatePen(PS_SOLID, <span class="number">2</span>, Pen);</span><br><span class="line"><span class="comment">//配置到画笔对象</span></span><br><span class="line">HPEN hOPen = (HPEN)SelectObject(HDC_Desktop, hNPen);</span><br><span class="line"><span class="comment">//设置起始点</span></span><br><span class="line">MoveToEx(HDC_Desktop, StartX, StartY, <span class="literal">NULL</span>); <span class="comment">//start</span></span><br><span class="line"><span class="comment">//设置画笔终点</span></span><br><span class="line">LineTo(HDC_Desktop, EndX, EndY); <span class="comment">//end</span></span><br><span class="line"><span class="comment">//删除对象</span></span><br><span class="line">DeleteObject(SelectObject(HDC_Desktop, hOPen));</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">//绘画距离字符串</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">DrawString</span><span class="params">(<span class="keyword">int</span> x, <span class="keyword">int</span> y, COLORREF color, <span class="keyword">const</span> <span class="keyword">char</span>* text)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="comment">//设置文本对齐方式</span></span><br><span class="line">SetTextAlign(HDC_Desktop, TA_CENTER | TA_NOUPDATECP);</span><br><span class="line"><span class="comment">//设置背景颜色</span></span><br><span class="line">SetBkColor(HDC_Desktop, RGB(<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>));</span><br><span class="line"><span class="comment">//设置背景模式,透明</span></span><br><span class="line">SetBkMode(HDC_Desktop, TRANSPARENT);</span><br><span class="line"><span class="comment">//设置文字颜色</span></span><br><span class="line">SetTextColor(HDC_Desktop, color);</span><br><span class="line"></span><br><span class="line"><span class="comment">//选择对象</span></span><br><span class="line">SelectObject(HDC_Desktop, Font);</span><br><span class="line"><span class="comment">//输出文本</span></span><br><span class="line">TextOutA(HDC_Desktop, x, y, text, <span class="built_in">strlen</span>(text));</span><br><span class="line"><span class="comment">//删除对象</span></span><br><span class="line">DeleteObject(Font);</span><br><span class="line"></span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">//世界坐标 到 屏幕坐标</span></span><br><span class="line"><span class="function"><span class="keyword">bool</span> <span class="title">WorldToScreen</span><span class="params">(Vec3 pos, Vec2& screen, <span class="keyword">float</span> matrix[<span class="number">16</span>], <span class="keyword">int</span> windowWidth, <span class="keyword">int</span> windowHeight)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line">Vec4 clipCoords;</span><br><span class="line">clipCoords.x = pos.x * matrix[<span class="number">0</span>] + pos.y * matrix[<span class="number">1</span>] + pos.z * matrix[<span class="number">2</span>] + matrix[<span class="number">3</span>];</span><br><span class="line">clipCoords.y = pos.x * matrix[<span class="number">4</span>] + pos.y * matrix[<span class="number">5</span>] + pos.z * matrix[<span class="number">6</span>] + matrix[<span class="number">7</span>];</span><br><span class="line">clipCoords.z = pos.x * matrix[<span class="number">8</span>] + pos.y * matrix[<span class="number">9</span>] + pos.z * matrix[<span class="number">10</span>] + matrix[<span class="number">11</span>];</span><br><span class="line">clipCoords.w = pos.x * matrix[<span class="number">12</span>] + pos.y * matrix[<span class="number">13</span>] + pos.z * matrix[<span class="number">14</span>] + matrix[<span class="number">15</span>];</span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> (clipCoords.w < <span class="number">0.1f</span>)</span><br><span class="line"><span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line"></span><br><span class="line">Vec3 NDC;</span><br><span class="line">NDC.x = clipCoords.x / clipCoords.w;</span><br><span class="line">NDC.y = clipCoords.y / clipCoords.w;</span><br><span class="line">NDC.z = clipCoords.z / clipCoords.w;</span><br><span class="line"></span><br><span class="line">screen.x = (windowWidth / <span class="number">2</span> * NDC.x) + (NDC.x + windowWidth / <span class="number">2</span>);</span><br><span class="line">screen.y = -(windowHeight / <span class="number">2</span> * NDC.y) + (NDC.y + windowHeight / <span class="number">2</span>);</span><br><span class="line"><span class="keyword">return</span> <span class="literal">true</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="function">DWORD <span class="title">GetProcId</span><span class="params">(<span class="keyword">const</span> <span class="keyword">char</span>* procName)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line">DWORD procId = <span class="number">0</span>;</span><br><span class="line">HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, <span class="number">0</span>);</span><br><span class="line"><span class="keyword">if</span> (hSnap != INVALID_HANDLE_VALUE)</span><br><span class="line">{</span><br><span class="line">PROCESSENTRY32 procEntry;</span><br><span class="line">procEntry.dwSize = <span class="keyword">sizeof</span>(procEntry);</span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> (Process32First(hSnap, &procEntry))</span><br><span class="line">{</span><br><span class="line"><span class="keyword">do</span></span><br><span class="line">{</span><br><span class="line"><span class="comment">//if (!_wcsicmp((const wchar_t*)procEntry.szExeFile, procName))</span></span><br><span class="line"><span class="keyword">if</span> (<span class="built_in">strcmp</span>(procName, procEntry.szExeFile) == <span class="number">0</span>)</span><br><span class="line">{</span><br><span class="line">procId = procEntry.th32ProcessID;</span><br><span class="line"><span class="keyword">break</span>;</span><br><span class="line">}</span><br><span class="line">} <span class="keyword">while</span> (Process32Next(hSnap, &procEntry));</span><br><span class="line"></span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line">CloseHandle(hSnap);</span><br><span class="line"><span class="keyword">return</span> procId;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="function"><span class="keyword">uintptr_t</span> <span class="title">GetModBase</span><span class="params">(DWORD ProcID, <span class="keyword">const</span> <span class="keyword">char</span>* ModuleName)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="keyword">uintptr_t</span> modbaseAddr = <span class="number">0</span>;</span><br><span class="line">HANDLE hsnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE | TH32CS_SNAPMODULE32, ProcID);</span><br><span class="line"><span class="keyword">if</span> (hsnap != INVALID_HANDLE_VALUE)</span><br><span class="line">{</span><br><span class="line">MODULEENTRY32 modEntry;</span><br><span class="line">modEntry.dwSize = <span class="keyword">sizeof</span>(modEntry);</span><br><span class="line"><span class="keyword">if</span> (Module32First(hsnap, &modEntry))</span><br><span class="line">{</span><br><span class="line"><span class="keyword">do</span></span><br><span class="line">{</span><br><span class="line"><span class="comment">//if (!_wcsicmp((const wchar_t*)modEntry.szModule, ModuleName))</span></span><br><span class="line"><span class="keyword">if</span> (<span class="built_in">strcmp</span>(ModuleName, modEntry.szModule) == <span class="number">0</span>)</span><br><span class="line">{</span><br><span class="line">modbaseAddr = (<span class="keyword">uintptr_t</span>)modEntry.modBaseAddr;</span><br><span class="line"><span class="keyword">break</span>;</span><br><span class="line">}</span><br><span class="line">} <span class="keyword">while</span> (Module32Next(hsnap, &modEntry));</span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line">CloseHandle(hsnap);</span><br><span class="line"><span class="keyword">return</span> modbaseAddr;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">MemStart</span><span class="params">()</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="comment">//为目标窗体赋值</span></span><br><span class="line">TargetWnd = FindWindow(<span class="number">0</span>, <span class="string">"Counter-Strike: Global Offensive"</span>);</span><br><span class="line"><span class="comment">//获得目标桌面</span></span><br><span class="line">HDC HDC_Desktop = GetDC(TargetWnd);</span><br><span class="line">SetupDrawing(HDC_Desktop, TargetWnd);</span><br><span class="line">GetWindowThreadProcessId(TargetWnd, &pid);</span><br><span class="line">handle = OpenProcess(PROCESS_ALL_ACCESS, <span class="number">0</span>, pid);</span><br><span class="line">GetClientRect(TargetWnd, &windowRect);</span><br><span class="line"></span><br><span class="line">windowRect.bottom *= <span class="number">1.25</span>;</span><br><span class="line">windowRect.right *= <span class="number">1.25</span>;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="function"><span class="keyword">int</span> <span class="title">main</span><span class="params">()</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line">MemStart();</span><br><span class="line">DWORD processID = GetProcId(<span class="string">"csgo.exe"</span>);</span><br><span class="line">HANDLE processHandle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, processID);</span><br><span class="line"><span class="keyword">uintptr_t</span> dllBaseAddress = <span class="number">0</span>;</span><br><span class="line">dllBaseAddress = GetModBase(processID, <span class="string">"client.dll"</span>);</span><br><span class="line"><span class="keyword">if</span> (processHandle != <span class="number">0</span>)</span><br><span class="line">{</span><br><span class="line"><span class="built_in">cout</span> << <span class="string">"ProcessID: "</span> << <span class="string">"0x"</span> << hex << processID << <span class="built_in">endl</span>;;</span><br><span class="line"><span class="built_in">cout</span> << <span class="string">"Process access granted\n"</span>;</span><br><span class="line"><span class="built_in">cout</span> << <span class="string">"dllBaseAddress: "</span> << <span class="string">"0x"</span> << hex << dllBaseAddress <<<span class="built_in">endl</span>;</span><br><span class="line">}</span><br><span class="line"><span class="keyword">else</span></span><br><span class="line">{</span><br><span class="line"><span class="built_in">cout</span> << <span class="string">"Process access not granted "</span> << <span class="built_in">endl</span>;</span><br><span class="line">Sleep(<span class="number">5000</span>);</span><br><span class="line"><span class="built_in">exit</span>(<span class="number">1</span>);</span><br><span class="line">}</span><br><span class="line"><span class="comment">//cout << pid << endl;</span></span><br><span class="line"><span class="comment">//HMODULE gg = GetProcessModuleHandle(pid, "client.dll");</span></span><br><span class="line">gameModule = dllBaseAddress;</span><br><span class="line"><span class="built_in">cout</span> << <span class="string">"\n"</span> << <span class="built_in">endl</span>;</span><br><span class="line"><span class="built_in">cout</span> << gameModule + dwLocalPlayer + zPosOffset << <span class="built_in">endl</span>;</span><br><span class="line"><span class="built_in">cout</span> << windowRect.left << <span class="built_in">endl</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">//LPVOID bb = LPVOID(DWORD(gameModule) + DWORD(dwLocalPlayer) + DWORD(zPosOffset));</span></span><br><span class="line"><span class="comment">//system("tasklist -m >d:12343.txt");</span></span><br><span class="line"><span class="comment">//调用绘线函数</span></span><br><span class="line"> <span class="comment">//绘画直线</span></span><br><span class="line">DWORD ClocalPlayer;</span><br><span class="line"><span class="keyword">int</span> m_fFlags = <span class="number">0</span>;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="keyword">float</span> x, y, z, hp;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="keyword">char</span> buf[<span class="number">100</span>];</span><br><span class="line"><span class="keyword">while</span> (<span class="number">1</span>) {</span><br><span class="line">ReadProcessMemory(processHandle, (PBYTE*)(dllBaseAddress + dwLocalPlayer), &ClocalPlayer, <span class="keyword">sizeof</span>(DWORD), <span class="literal">NULL</span>);</span><br><span class="line"><span class="comment">//Base</span></span><br><span class="line">Vec2 vScreen = { <span class="number">0</span>,<span class="number">0</span> };</span><br><span class="line">Vec2 vScreen_head = { <span class="number">0</span>,<span class="number">0</span> };</span><br><span class="line"><span class="comment">//Head</span></span><br><span class="line">Vec2 vHead = { <span class="number">0</span>,<span class="number">0</span> };</span><br><span class="line"></span><br><span class="line">Vec3 vecMine;</span><br><span class="line"><span class="comment">//DrawLine(0, 0, 1920.0, 1080.0, SnapLineCOLOR);</span></span><br><span class="line">ReadProcessMemory(processHandle, (BYTE*)(ClocalPlayer + xPosOffset), &vecMine.x, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line">ReadProcessMemory(processHandle, (BYTE*)(ClocalPlayer + yPosOffset), &vecMine.y, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line">ReadProcessMemory(processHandle, (BYTE*)(ClocalPlayer + zPosOffset), &vecMine.z, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line"></span><br><span class="line">ReadProcessMemory(processHandle, (PBYTE*)(dllBaseAddress + dwViewMatrix), Matrix, <span class="keyword">sizeof</span>(Matrix), <span class="literal">NULL</span>);</span><br><span class="line"></span><br><span class="line">DrawString(<span class="number">100</span>, <span class="number">100</span>, TextCOLOR, (<span class="string">"x: "</span> + to_string(<span class="keyword">int</span>(vecMine.x))).data());</span><br><span class="line">DrawString(<span class="number">100</span>, <span class="number">120</span>, TextCOLOR, (<span class="string">"y: "</span> + to_string(<span class="keyword">int</span>(vecMine.y))).data());</span><br><span class="line">DrawString(<span class="number">100</span>, <span class="number">140</span>, TextCOLOR, (<span class="string">"z: "</span> + to_string(<span class="keyword">int</span>(vecMine.z))).data());</span><br><span class="line"><span class="comment">//窗口大小</span></span><br><span class="line"><span class="comment">//DrawString(100, 180, TextCOLOR, ("l: " + to_string(windowRect.left)).data());</span></span><br><span class="line">DrawString(<span class="number">100</span>, <span class="number">200</span>, TextCOLOR, (<span class="string">"r: "</span> + to_string(windowRect.right)).data());</span><br><span class="line"><span class="comment">//DrawString(100, 220, TextCOLOR, ("t: " + to_string(windowRect.top)).data());</span></span><br><span class="line">DrawString(<span class="number">100</span>, <span class="number">240</span>, TextCOLOR, (<span class="string">"b: "</span> + to_string(windowRect.bottom)).data());</span><br><span class="line"></span><br><span class="line"><span class="comment">//自己 阵营</span></span><br><span class="line"><span class="keyword">int</span> myTeam = <span class="number">0</span>;</span><br><span class="line">ReadProcessMemory(processHandle, (BYTE*)(ClocalPlayer + m_iTeamNum), &myTeam, <span class="keyword">sizeof</span>(<span class="keyword">int</span>), <span class="literal">NULL</span>);</span><br><span class="line"><span class="comment">/*</span></span><br><span class="line"><span class="comment">for (int i = 0; i < 16;i++) {</span></span><br><span class="line"><span class="comment">DrawString(200, 200 + i * 20, TextCOLOR, ("Matrix: " + to_string(Matrix[i])).data());</span></span><br><span class="line"><span class="comment">}</span></span><br><span class="line"><span class="comment">*/</span></span><br><span class="line">DrawString(<span class="number">200</span>, <span class="number">200</span> + <span class="number">16</span> * <span class="number">20</span>, TextCOLOR, (<span class="string">"阵营: "</span> + to_string(<span class="keyword">int</span>(myTeam))).data());</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">//loop</span></span><br><span class="line"><span class="keyword">for</span> (<span class="keyword">short</span> <span class="keyword">int</span> i = <span class="number">0</span>; i < <span class="number">64</span>; i++) {</span><br><span class="line"><span class="comment">//DWORD entity = *(DWORD*)(gameModule + dwEntityList + i * 0x10);</span></span><br><span class="line">DWORD entity = <span class="literal">NULL</span>;</span><br><span class="line">ReadProcessMemory(processHandle, (DWORD*)(gameModule + dwEntityList + i * <span class="number">0x10</span>), &entity, <span class="keyword">sizeof</span>(DWORD), <span class="literal">NULL</span>);</span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> (entity != <span class="literal">NULL</span>) {</span><br><span class="line"><span class="keyword">if</span> (entity != ClocalPlayer) {</span><br><span class="line"><span class="keyword">int</span> entityTeam = <span class="number">0</span>;<span class="comment">//阵营</span></span><br><span class="line">ReadProcessMemory(processHandle, (<span class="keyword">int</span>*)(entity + m_iTeamNum), &entityTeam, <span class="keyword">sizeof</span>(<span class="keyword">int</span>), <span class="literal">NULL</span>);</span><br><span class="line">Vec3 entityLocation = { <span class="number">0</span>,<span class="number">0</span>,<span class="number">0</span>, };<span class="comment">//坐标</span></span><br><span class="line">ReadProcessMemory(processHandle, (Vec3*)(entity + m_vecOrigin), &entityLocation, <span class="keyword">sizeof</span>(Vec3), <span class="literal">NULL</span>);</span><br><span class="line">DWORD dwBoneMatrix = <span class="number">0</span>;</span><br><span class="line">ReadProcessMemory(processHandle, (DWORD*)(entity + m_dwBoneMatrix), &dwBoneMatrix, <span class="keyword">sizeof</span>(DWORD), <span class="literal">NULL</span>);</span><br><span class="line"></span><br><span class="line">DWORD health = <span class="number">0</span>;<span class="comment">//血量</span></span><br><span class="line">ReadProcessMemory(processHandle, (DWORD*)(entity + hpOffset), &health, <span class="keyword">sizeof</span>(DWORD), <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">int</span> isDormat = <span class="number">1</span>;<span class="comment">//是否加载了</span></span><br><span class="line">ReadProcessMemory(processHandle, (<span class="keyword">int</span>*)(entity + m_bDormant), &isDormat, <span class="keyword">sizeof</span>(<span class="keyword">int</span>), <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">float</span> head = <span class="number">0</span>;<span class="comment">//高度</span></span><br><span class="line">ReadProcessMemory(processHandle, (<span class="keyword">float</span>*)(entity + hPosOffset), &head, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line">Vec3 head_dwBoneMatrix = { entityLocation.x, entityLocation.y, entityLocation.z+head };</span><br><span class="line"><span class="keyword">if</span> (isDormat == <span class="number">0</span>) {<span class="comment">//检查实体是否被剔除</span></span><br><span class="line"><span class="keyword">if</span> (health > <span class="number">0</span>) {</span><br><span class="line"><span class="keyword">if</span> (WorldToScreen(entityLocation, vScreen, Matrix, windowRect.right, windowRect.bottom)) {</span><br><span class="line"><span class="comment">//得到了头部的x,y,z</span></span><br><span class="line"><span class="keyword">float</span> enemyHeadX = <span class="number">0</span>;</span><br><span class="line">ReadProcessMemory(processHandle, (<span class="keyword">float</span>*)(dwBoneMatrix + <span class="number">0x30</span> * <span class="number">9</span> + <span class="number">0x0C</span>), &isDormat, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">float</span> enemyHeadY = <span class="number">0</span>;</span><br><span class="line">ReadProcessMemory(processHandle, (<span class="keyword">float</span>*)(dwBoneMatrix + <span class="number">0x30</span> * <span class="number">9</span> + <span class="number">0x1C</span>), &isDormat, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">float</span> enemyHeadZ = <span class="number">0</span>;</span><br><span class="line">ReadProcessMemory(processHandle, (<span class="keyword">float</span>*)(dwBoneMatrix + <span class="number">0x30</span> * <span class="number">9</span> + <span class="number">0x2C</span>), &isDormat, <span class="keyword">sizeof</span>(<span class="keyword">float</span>), <span class="literal">NULL</span>);</span><br><span class="line"><span class="comment">//实体的x,y,z转成 Vec3</span></span><br><span class="line">Vec3 enemyHeadPos = { enemyHeadX, enemyHeadY, enemyHeadZ };</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> (WorldToScreen(head_dwBoneMatrix, vHead, Matrix, windowRect.right, windowRect.bottom)) {</span><br><span class="line"><span class="keyword">float</span> head = vHead.y - vScreen.y;</span><br><span class="line"><span class="keyword">float</span> width = head / <span class="number">1.8</span>;</span><br><span class="line"><span class="keyword">float</span> center = width / <span class="number">2</span>;</span><br><span class="line"><span class="keyword">if</span> (myTeam == entityTeam)</span><br><span class="line">{</span><br><span class="line">EnemyBrush = CreateSolidBrush(RGB(<span class="number">000</span>, <span class="number">000</span>, <span class="number">255</span>));</span><br><span class="line"><span class="comment">//身体</span></span><br><span class="line">DrawBorderBox(vScreen.x - center, vScreen.y, width, head, <span class="number">2</span>);</span><br><span class="line"><span class="comment">//头部</span></span><br><span class="line">DrawBorderBox(vScreen.x - center, vScreen.y + head, width, head * <span class="number">0.125</span>, <span class="number">2</span>);</span><br><span class="line">DeleteObject(EnemyBrush);</span><br><span class="line">}</span><br><span class="line"><span class="keyword">else</span></span><br><span class="line">{</span><br><span class="line">EnemyBrush = CreateSolidBrush(RGB(<span class="number">0</span>, <span class="number">255</span>, <span class="number">67</span>));</span><br><span class="line"><span class="comment">//身体</span></span><br><span class="line">DrawBorderBox(vScreen.x - center, vScreen.y , width, head, <span class="number">2</span>);</span><br><span class="line">DeleteObject(EnemyBrush);</span><br><span class="line"><span class="comment">//头部</span></span><br><span class="line">EnemyBrush = CreateSolidBrush(RGB(<span class="number">255</span>, <span class="number">000</span>, <span class="number">000</span>));</span><br><span class="line">DrawBorderBox(vScreen.x - head * <span class="number">0.125</span>, vScreen.y+head, head * <span class="number">0.125</span>*<span class="number">2</span>, head*<span class="number">0.125</span>, <span class="number">1</span>);</span><br><span class="line">DrawLine(vHead.x, vHead.y, windowRect.right / <span class="number">2</span>, <span class="number">0</span>, RGB(<span class="number">255</span>, <span class="number">000</span>, <span class="number">000</span>));</span><br><span class="line"><span class="comment">// hp</span></span><br><span class="line"><span class="keyword">if</span> (width) {</span><br><span class="line">DrawString(vScreen.x, vScreen.y + head / <span class="number">2</span>, RGB(<span class="number">245</span>, <span class="number">166</span>, <span class="number">35</span>), (to_string(health)).data());</span><br><span class="line">}</span><br><span class="line"><span class="comment">/*</span></span><br><span class="line"><span class="comment">DrawString(vScreen.x, vScreen.y, RGB(0, 255, 68), ("*"));</span></span><br><span class="line"><span class="comment">DrawString(vHead.x, vHead.y, RGB(0, 255, 68), ("#"));</span></span><br><span class="line"><span class="comment">*/</span></span><br><span class="line">DeleteObject(EnemyBrush);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"></span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">}</span><br><span class="line"><span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line">}</span><br><span class="line"></span><br></pre></td></tr></table></figure><h1 id="效果"><a href="#效果" class="headerlink" title="效果"></a>效果</h1><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img@master/blog_evrstr/1614073815589-1613995840861-Snipaste_2021-02-22_19-55-12.jpg"></p><hr><p>这是最简单的一个方框透视,虽然代码不是最简洁。</p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/C-C/">C/C++</category>
<category domain="https://evrstr.cc/categories/%E6%B8%B8%E6%88%8F/">游戏</category>
<category domain="https://evrstr.cc/tags/C-C/">C/C++</category>
<category domain="https://evrstr.cc/tags/%E6%B8%B8%E6%88%8F%E9%80%86%E5%90%91/">游戏逆向</category>
<category domain="https://evrstr.cc/tags/%E6%96%B9%E6%A1%86%E9%80%8F%E8%A7%86/">方框透视</category>
<comments>https://evrstr.cc/posts/954b.html#disqus_thread</comments>
</item>
<item>
<title>C++实现HTTP POST GET请求</title>
<link>https://evrstr.cc/posts/3dd0.html</link>
<guid>https://evrstr.cc/posts/3dd0.html</guid>
<pubDate>Mon, 22 Feb 2021 05:44:34 GMT</pubDate>
<description><h1 id="C-实现HTTP-POST-GET请求"><a href="#C-实现HTTP-POST-GET请求" class="headerlink" title="C++实现HTTP POST GET请求"></a>C++实现HTTP POST</description>
<content:encoded><![CDATA[<h1 id="C-实现HTTP-POST-GET请求"><a href="#C-实现HTTP-POST-GET请求" class="headerlink" title="C++实现HTTP POST GET请求"></a>C++实现HTTP POST GET请求</h1><p>最近写网络验证要用到,而且功能较简单,所以找了这么一段代码,没有去用那些常用的网络请求库。</p><h2 id="WininetHttp-h"><a href="#WininetHttp-h" class="headerlink" title="WininetHttp.h"></a><code>WininetHttp.h</code></h2><figure class="highlight h"><table><tr><td class="code"><pre><span class="line"><span class="meta">#<span class="meta-keyword">pragma</span> once</span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><iostream></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><windows.h></span></span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><wininet.h></span></span></span><br><span class="line"></span><br><span class="line"><span class="keyword">using</span> <span class="keyword">namespace</span> <span class="built_in">std</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">//每次读取的字节数</span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">define</span> READ_BUFFER_SIZE 4096</span></span><br><span class="line"></span><br><span class="line"><span class="class"><span class="keyword">enum</span> <span class="title">HttpInterfaceError</span></span></span><br><span class="line"><span class="class">{</span></span><br><span class="line">Hir_Success = <span class="number">0</span>, <span class="comment">//成功</span></span><br><span class="line">Hir_InitErr, <span class="comment">//初始化失败</span></span><br><span class="line">Hir_ConnectErr, <span class="comment">//连接HTTP服务器失败</span></span><br><span class="line">Hir_SendErr, <span class="comment">//发送请求失败</span></span><br><span class="line">Hir_QueryErr, <span class="comment">//查询HTTP请求头失败</span></span><br><span class="line">Hir_404, <span class="comment">//页面不存在</span></span><br><span class="line">Hir_IllegalUrl, <span class="comment">//无效的URL</span></span><br><span class="line">Hir_CreateFileErr, <span class="comment">//创建文件失败</span></span><br><span class="line">Hir_DownloadErr, <span class="comment">//下载失败</span></span><br><span class="line">Hir_QueryIPErr, <span class="comment">//获取域名对应的地址失败</span></span><br><span class="line">Hir_SocketErr, <span class="comment">//套接字错误</span></span><br><span class="line">Hir_UserCancel, <span class="comment">//用户取消下载</span></span><br><span class="line">Hir_BufferErr, <span class="comment">//文件太大,缓冲区不足</span></span><br><span class="line">Hir_HeaderErr, <span class="comment">//HTTP请求头错误</span></span><br><span class="line">Hir_ParamErr, <span class="comment">//参数错误,空指针,空字符</span></span><br><span class="line">Hir_UnknowErr,</span><br><span class="line">};</span><br><span class="line"><span class="class"><span class="keyword">enum</span> <span class="title">HttpRequest</span></span></span><br><span class="line"><span class="class">{</span></span><br><span class="line">Hr_Get,</span><br><span class="line">Hr_Post</span><br><span class="line">};</span><br><span class="line"><span class="class"><span class="keyword">class</span> <span class="title">CWininetHttp</span></span></span><br><span class="line"><span class="class">{</span></span><br><span class="line"><span class="keyword">public</span>:</span><br><span class="line">CWininetHttp(<span class="keyword">void</span>);</span><br><span class="line">~CWininetHttp(<span class="keyword">void</span>);</span><br><span class="line"></span><br><span class="line"><span class="keyword">public</span>:</span><br><span class="line"><span class="comment">// 通过HTTP请求:Get或Post方式获取JSON信息 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">const</span> <span class="built_in">std</span>::<span class="built_in">string</span> <span class="title">RequestJsonInfo</span><span class="params">(<span class="keyword">const</span> <span class="built_in">std</span>::<span class="built_in">string</span>& strUrl,</span></span></span><br><span class="line"><span class="function"><span class="params">HttpRequest type = Hr_Get,</span></span></span><br><span class="line"><span class="function"><span class="params"><span class="built_in">std</span>::<span class="built_in">string</span> lpHeader = <span class="string">""</span>,</span></span></span><br><span class="line"><span class="function"><span class="params"><span class="built_in">std</span>::<span class="built_in">string</span> lpPostData = <span class="string">""</span>)</span></span>;</span><br><span class="line"><span class="keyword">protected</span>:</span><br><span class="line"><span class="comment">// 解析卡口Json数据 [3/14/2017/shike]</span></span><br><span class="line"><span class="comment">//void ParseJsonInfo(const std::string& strJsonInfo);</span></span><br><span class="line"></span><br><span class="line"><span class="comment">// 关闭句柄 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">Release</span><span class="params">()</span></span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">// 释放句柄 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">ReleaseHandle</span><span class="params">(HINTERNET& hInternet)</span></span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">// 解析URL地址 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">ParseURLWeb</span><span class="params">(<span class="built_in">std</span>::<span class="built_in">string</span> strUrl, <span class="built_in">std</span>::<span class="built_in">string</span>& strHostName, <span class="built_in">std</span>::<span class="built_in">string</span>& strPageName, WORD& sPort)</span></span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">// UTF-8转为GBK2312 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">char</span>* <span class="title">UtfToGbk</span><span class="params">(<span class="keyword">const</span> <span class="keyword">char</span>* utf8)</span></span>;</span><br><span class="line"></span><br><span class="line"><span class="keyword">private</span>:</span><br><span class="line">HINTERNET m_hSession;</span><br><span class="line">HINTERNET m_hConnect;</span><br><span class="line">HINTERNET m_hRequest;</span><br><span class="line">HttpInterfaceError m_error;</span><br><span class="line">};</span><br></pre></td></tr></table></figure><h2 id="WininetHttp-cpp"><a href="#WininetHttp-cpp" class="headerlink" title="WininetHttp.cpp"></a><code>WininetHttp.cpp</code></h2><figure class="highlight cpp"><table><tr><td class="code"><pre><span class="line"><span class="comment">/*************************************************</span></span><br><span class="line"><span class="comment">File name : WininetHttp.cpp</span></span><br><span class="line"><span class="comment">Description: 通过URL访问HTTP请求方式获取JSON</span></span><br><span class="line"><span class="comment">Author : shike</span></span><br><span class="line"><span class="comment">Version : 1.0</span></span><br><span class="line"><span class="comment">Date : 2016/10/27</span></span><br><span class="line"><span class="comment">Copyright (C) 2016 - All Rights Reserved</span></span><br><span class="line"><span class="comment">*************************************************/</span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string">"WininetHttp.h"</span></span></span><br><span class="line"></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><iostream></span></span></span><br><span class="line"></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><fstream></span></span></span><br><span class="line"></span><br><span class="line"><span class="meta">#<span class="meta-keyword">pragma</span> comment(lib, <span class="meta-string">"Wininet.lib"</span>)</span></span><br><span class="line"><span class="meta">#<span class="meta-keyword">include</span> <span class="meta-string"><tchar.h></span></span></span><br><span class="line"><span class="keyword">using</span> <span class="keyword">namespace</span> <span class="built_in">std</span>;</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line">CWininetHttp::CWininetHttp(<span class="keyword">void</span>) :m_hSession(<span class="literal">NULL</span>), m_hConnect(<span class="literal">NULL</span>), m_hRequest(<span class="literal">NULL</span>)</span><br><span class="line">{</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">CWininetHttp::~CWininetHttp(<span class="keyword">void</span>)</span><br><span class="line">{</span><br><span class="line">Release();</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">// 通过HTTP请求:Get或Post方式获取JSON信息 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">const</span> <span class="built_in">std</span>::<span class="built_in">string</span> <span class="title">CWininetHttp::RequestJsonInfo</span><span class="params">(<span class="keyword">const</span> <span class="built_in">std</span>::<span class="built_in">string</span>& lpUrl,</span></span></span><br><span class="line"><span class="function"><span class="params">HttpRequest type<span class="comment">/* = Hr_Get*/</span>,</span></span></span><br><span class="line"><span class="function"><span class="params"><span class="built_in">std</span>::<span class="built_in">string</span> strHeader<span class="comment">/*=""*/</span>,</span></span></span><br><span class="line"><span class="function"><span class="params"><span class="built_in">std</span>::<span class="built_in">string</span> strPostData<span class="comment">/*=""*/</span>)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="built_in">std</span>::<span class="built_in">string</span> strRet = <span class="string">""</span>;</span><br><span class="line"><span class="keyword">try</span></span><br><span class="line">{</span><br><span class="line"><span class="keyword">if</span> (lpUrl.empty())</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_ParamErr;</span><br><span class="line">}</span><br><span class="line">Release();</span><br><span class="line">m_hSession = InternetOpen(_T(<span class="string">"Http-connect"</span>), INTERNET_OPEN_TYPE_PRECONFIG, <span class="literal">NULL</span>, <span class="literal">NULL</span>, <span class="literal">NULL</span>); <span class="comment">//局部</span></span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> (<span class="literal">NULL</span> == m_hSession)</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_InitErr;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">INTERNET_PORT port = INTERNET_DEFAULT_HTTP_PORT;</span><br><span class="line"><span class="built_in">std</span>::<span class="built_in">string</span> strHostName = <span class="string">""</span>;</span><br><span class="line"><span class="built_in">std</span>::<span class="built_in">string</span> strPageName = <span class="string">""</span>;</span><br><span class="line"></span><br><span class="line">ParseURLWeb(lpUrl, strHostName, strPageName, port);</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">"lpUrl:%s,\nstrHostName:%s,\nstrPageName:%s,\nport:%d\n"</span>, lpUrl.c_str(), strHostName.c_str(), strPageName.c_str(), (<span class="keyword">int</span>)port);</span><br><span class="line"></span><br><span class="line">m_hConnect = InternetConnectA(m_hSession, strHostName.c_str(), port, <span class="literal">NULL</span>, <span class="literal">NULL</span>, INTERNET_SERVICE_HTTP, <span class="literal">NULL</span>, <span class="literal">NULL</span>);</span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> (<span class="literal">NULL</span> == m_hConnect)</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_ConnectErr;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="built_in">std</span>::<span class="built_in">string</span> strRequestType;</span><br><span class="line"><span class="keyword">if</span> (Hr_Get == type)</span><br><span class="line">{</span><br><span class="line">strRequestType = <span class="string">"GET"</span>;</span><br><span class="line">}</span><br><span class="line"><span class="keyword">else</span></span><br><span class="line">{</span><br><span class="line">strRequestType = <span class="string">"POST"</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">m_hRequest = HttpOpenRequestA(m_hConnect, strRequestType.c_str(), strPageName.c_str(), <span class="string">"HTTP/1.1"</span>, <span class="literal">NULL</span>, <span class="literal">NULL</span>, INTERNET_FLAG_RELOAD, <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">if</span> (<span class="literal">NULL</span> == m_hRequest)</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_InitErr;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">DWORD dwHeaderSize = (strHeader.empty()) ? <span class="number">0</span> : <span class="built_in">strlen</span>(strHeader.c_str());</span><br><span class="line">BOOL bRet = FALSE;</span><br><span class="line"><span class="keyword">if</span> (Hr_Get == type)</span><br><span class="line">{</span><br><span class="line">bRet = HttpSendRequestA(m_hRequest, strHeader.c_str(), dwHeaderSize, <span class="literal">NULL</span>, <span class="number">0</span>);</span><br><span class="line">}</span><br><span class="line"><span class="keyword">else</span></span><br><span class="line">{</span><br><span class="line">DWORD dwSize = (strPostData.empty()) ? <span class="number">0</span> : <span class="built_in">strlen</span>(strPostData.c_str());</span><br><span class="line">bRet = HttpSendRequestA(m_hRequest, strHeader.c_str(), dwHeaderSize, (LPVOID)strPostData.c_str(), dwSize);</span><br><span class="line">}</span><br><span class="line"><span class="keyword">if</span> (!bRet)</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_SendErr;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="keyword">char</span> szBuffer[READ_BUFFER_SIZE + <span class="number">1</span>] = { <span class="number">0</span> };</span><br><span class="line">DWORD dwReadSize = READ_BUFFER_SIZE;</span><br><span class="line"><span class="keyword">if</span> (!HttpQueryInfoA(m_hRequest, HTTP_QUERY_RAW_HEADERS, szBuffer, &dwReadSize, <span class="literal">NULL</span>))</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_QueryErr;</span><br><span class="line">}</span><br><span class="line"><span class="keyword">if</span> (<span class="literal">NULL</span> != <span class="built_in">strstr</span>(szBuffer, <span class="string">"404"</span>))</span><br><span class="line">{</span><br><span class="line"><span class="keyword">throw</span> Hir_404;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="keyword">while</span> (<span class="literal">true</span>)</span><br><span class="line">{</span><br><span class="line">bRet = InternetReadFile(m_hRequest, szBuffer, READ_BUFFER_SIZE, &dwReadSize);</span><br><span class="line"><span class="keyword">if</span> (!bRet || (<span class="number">0</span> == dwReadSize))</span><br><span class="line">{</span><br><span class="line"><span class="keyword">break</span>;</span><br><span class="line">}</span><br><span class="line">szBuffer[dwReadSize] = <span class="string">'\0'</span>;</span><br><span class="line">strRet.append(szBuffer);</span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line"><span class="keyword">catch</span> (HttpInterfaceError error)</span><br><span class="line">{</span><br><span class="line">m_error = error;</span><br><span class="line">}</span><br><span class="line"><span class="keyword">return</span> <span class="built_in">std</span>::move(strRet);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment">// 解析URL地址 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">CWininetHttp::ParseURLWeb</span><span class="params">(<span class="built_in">std</span>::<span class="built_in">string</span> strUrl, <span class="built_in">std</span>::<span class="built_in">string</span>& strHostName, <span class="built_in">std</span>::<span class="built_in">string</span>& strPageName, WORD& sPort)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line">sPort = <span class="number">80</span>;</span><br><span class="line"><span class="function"><span class="built_in">string</span> <span class="title">strTemp</span><span class="params">(strUrl)</span></span>;</span><br><span class="line"><span class="built_in">std</span>::<span class="keyword">size_t</span> nPos = strTemp.find(<span class="string">"http://"</span>);</span><br><span class="line"><span class="keyword">if</span> (nPos != <span class="built_in">std</span>::<span class="built_in">string</span>::npos)</span><br><span class="line">{</span><br><span class="line">strTemp = strTemp.substr(nPos + <span class="number">7</span>, strTemp.size() - nPos - <span class="number">7</span>);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">nPos = strTemp.find(<span class="string">'/'</span>);</span><br><span class="line"><span class="keyword">if</span> (nPos == <span class="built_in">std</span>::<span class="built_in">string</span>::npos) <span class="comment">//没有找到</span></span><br><span class="line">{</span><br><span class="line">strHostName = strTemp;</span><br><span class="line">}</span><br><span class="line"><span class="keyword">else</span></span><br><span class="line">{</span><br><span class="line">strHostName = strTemp.substr(<span class="number">0</span>, nPos);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="built_in">std</span>::<span class="keyword">size_t</span> nPos1 = strHostName.find(<span class="string">':'</span>);</span><br><span class="line"><span class="keyword">if</span> (nPos1 != <span class="built_in">std</span>::<span class="built_in">string</span>::npos)</span><br><span class="line">{</span><br><span class="line"><span class="built_in">std</span>::<span class="built_in">string</span> strPort = strTemp.substr(nPos1 + <span class="number">1</span>, strHostName.size() - nPos1 - <span class="number">1</span>);</span><br><span class="line">strHostName = strHostName.substr(<span class="number">0</span>, nPos1);</span><br><span class="line">sPort = (WORD)atoi(strPort.c_str());</span><br><span class="line">}</span><br><span class="line"><span class="keyword">if</span> (nPos == <span class="built_in">std</span>::<span class="built_in">string</span>::npos)</span><br><span class="line">{</span><br><span class="line"><span class="keyword">return</span>;</span><br><span class="line">}</span><br><span class="line">strPageName = strTemp.substr(nPos, strTemp.size() - nPos);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">// 关闭句柄 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">CWininetHttp::Release</span><span class="params">()</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line">ReleaseHandle(m_hRequest);</span><br><span class="line">ReleaseHandle(m_hConnect);</span><br><span class="line">ReleaseHandle(m_hSession);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">// 释放句柄 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">void</span> <span class="title">CWininetHttp::ReleaseHandle</span><span class="params">(HINTERNET& hInternet)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="keyword">if</span> (hInternet)</span><br><span class="line">{</span><br><span class="line">InternetCloseHandle(hInternet);</span><br><span class="line">hInternet = <span class="literal">NULL</span>;</span><br><span class="line">}</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="comment">// UTF-8转为GBK2312 [3/14/2017/shike]</span></span><br><span class="line"><span class="function"><span class="keyword">char</span>* <span class="title">CWininetHttp::UtfToGbk</span><span class="params">(<span class="keyword">const</span> <span class="keyword">char</span>* utf8)</span></span></span><br><span class="line"><span class="function"></span>{</span><br><span class="line"><span class="keyword">int</span> len = MultiByteToWideChar(CP_UTF8, <span class="number">0</span>, utf8, <span class="number">-1</span>, <span class="literal">NULL</span>, <span class="number">0</span>);</span><br><span class="line"><span class="keyword">wchar_t</span>* wstr = <span class="keyword">new</span> <span class="keyword">wchar_t</span>[len + <span class="number">1</span>];</span><br><span class="line"><span class="built_in">memset</span>(wstr, <span class="number">0</span>, len + <span class="number">1</span>);</span><br><span class="line">MultiByteToWideChar(CP_UTF8, <span class="number">0</span>, utf8, <span class="number">-1</span>, wstr, len);</span><br><span class="line">len = WideCharToMultiByte(CP_ACP, <span class="number">0</span>, wstr, <span class="number">-1</span>, <span class="literal">NULL</span>, <span class="number">0</span>, <span class="literal">NULL</span>, <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">char</span>* str = <span class="keyword">new</span> <span class="keyword">char</span>[len + <span class="number">1</span>];</span><br><span class="line"><span class="built_in">memset</span>(str, <span class="number">0</span>, len + <span class="number">1</span>);</span><br><span class="line">WideCharToMultiByte(CP_ACP, <span class="number">0</span>, wstr, <span class="number">-1</span>, str, len, <span class="literal">NULL</span>, <span class="literal">NULL</span>);</span><br><span class="line"><span class="keyword">if</span> (wstr) <span class="keyword">delete</span>[] wstr;</span><br><span class="line"><span class="keyword">return</span> str;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><h1 id="使用"><a href="#使用" class="headerlink" title="使用"></a>使用</h1><p><code>string dats = request.RequestJsonInfo("http://evrstr.cc/", Hr_Get);</code></p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/C-C/">C/C++</category>
<category domain="https://evrstr.cc/categories/%E6%B8%B8%E6%88%8F%E9%80%86%E5%90%91/">游戏逆向</category>
<category domain="https://evrstr.cc/tags/C-C/">C/C++</category>
<category domain="https://evrstr.cc/tags/http/">http</category>
<category domain="https://evrstr.cc/tags/%E7%BD%91%E7%BB%9C/">网络</category>
<category domain="https://evrstr.cc/tags/%E6%B8%B8%E6%88%8F%E9%80%86%E5%90%91/">游戏逆向</category>
<category domain="https://evrstr.cc/tags/%E7%BD%91%E7%BB%9C%E9%AA%8C%E8%AF%81/">网络验证</category>
<comments>https://evrstr.cc/posts/3dd0.html#disqus_thread</comments>
</item>
<item>
<title>标签外挂使用说明</title>
<link>https://evrstr.cc/posts/8a9a.html</link>
<guid>https://evrstr.cc/posts/8a9a.html</guid>
<pubDate>Sat, 20 Feb 2021 13:11:19 GMT</pubDate>
<description><h1 id="标签外挂使用说明"><a href="#标签外挂使用说明" class="headerlink" title="标签外挂使用说明"></a>标签外挂使用说明</h1><h2 id="Note-Bootstrap-Callout"><a</description>
<content:encoded><![CDATA[<h1 id="标签外挂使用说明"><a href="#标签外挂使用说明" class="headerlink" title="标签外挂使用说明"></a>标签外挂使用说明</h1><h2 id="Note-Bootstrap-Callout"><a href="#Note-Bootstrap-Callout" class="headerlink" title="Note (Bootstrap Callout)"></a>Note (Bootstrap Callout)</h2><div class="note blue icon simple"><i class="note-icon fas fa-bullhorn"></i><p>2021年快到了….</p></div><div class="tabs" id="note"><ul class="nav-tabs"><li class="tab active"><button type="button" data-href="#note-1"><b>simple</b></button></li><li class="tab"><button type="button" data-href="#note-2"><b>modern</b></button></li><li class="tab"><button type="button" data-href="#note-3"><b>flat</b></button></li><li class="tab"><button type="button" data-href="#note-4"><b>disabled</b></button></li></ul><div class="tab-contents"><div class="tab-item-content active" id="note-1"><div class="note simple"><p>默认 提示块标籤</p></div><div class="note default simple"><p>default 提示块标籤</p></div><div class="note primary simple"><p>primary 提示块标籤</p></div><div class="note success simple"><p>success 提示块标籤</p></div><div class="note info simple"><p>info 提示块标籤</p></div><div class="note warning simple"><p>warning 提示块标籤</p></div><div class="note danger simple"><p>danger 提示块标籤</p></div><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% note simple %}</span><br><span class="line">默认 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note default simple %}</span><br><span class="line">default 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note primary simple %}</span><br><span class="line">primary 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note success simple %}</span><br><span class="line">success 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note info simple %}</span><br><span class="line">info 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note warning simple %}</span><br><span class="line">warning 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note danger simple %}</span><br><span class="line">danger 提示块标籤</span><br><span class="line">{% endnote %}</span><br></pre></td></tr></table></figure><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="note-2"><div class="note modern"><p>默认 提示块标籤</p></div><div class="note default modern"><p>default 提示块标籤</p></div><div class="note primary modern"><p>primary 提示块标籤</p></div><div class="note success modern"><p>success 提示块标籤</p></div><div class="note info modern"><p>info 提示块标籤</p></div><div class="note warning modern"><p>warning 提示块标籤</p></div><div class="note danger modern"><p>danger 提示块标籤</p></div><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% note modern %}</span><br><span class="line">默认 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note default modern %}</span><br><span class="line">default 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note primary modern %}</span><br><span class="line">primary 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note success modern %}</span><br><span class="line">success 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note info modern %}</span><br><span class="line">info 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note warning modern %}</span><br><span class="line">warning 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note danger modern %}</span><br><span class="line">danger 提示块标籤</span><br><span class="line">{% endnote %}</span><br></pre></td></tr></table></figure><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="note-3"><div class="note flat"><p>默认 提示块标籤</p></div><div class="note default flat"><p>default 提示块标籤</p></div><div class="note primary flat"><p>primary 提示块标籤</p></div><div class="note success flat"><p>success 提示块标籤</p></div><div class="note info flat"><p>info 提示块标籤</p></div><div class="note warning flat"><p>warning 提示块标籤</p></div><div class="note danger flat"><p>danger 提示块标籤</p></div><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% note flat %}</span><br><span class="line">默认 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note default flat %}</span><br><span class="line">default 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note primary flat %}</span><br><span class="line">primary 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note success flat %}</span><br><span class="line">success 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note info flat %}</span><br><span class="line">info 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note warning flat %}</span><br><span class="line">warning 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note danger flat %}</span><br><span class="line">danger 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br></pre></td></tr></table></figure><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="note-4"><div class="note disabled"><p>默认 提示块标籤</p></div><div class="note default disabled"><p>default 提示块标籤</p></div><div class="note primary disabled"><p>primary 提示块标籤</p></div><div class="note success disabled"><p>success 提示块标籤</p></div><div class="note info disabled"><p>info 提示块标籤</p></div><div class="note warning disabled"><p>warning 提示块标籤</p></div><div class="note danger disabled"><p>danger 提示块标籤</p></div><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% note disabled %}</span><br><span class="line">默认 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note default disabled %}</span><br><span class="line">default 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note primary disabled %}</span><br><span class="line">primary 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note success disabled %}</span><br><span class="line">success 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note info disabled %}</span><br><span class="line">info 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note warning disabled %}</span><br><span class="line">warning 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br><span class="line">{% note danger disabled %}</span><br><span class="line">danger 提示块标籤</span><br><span class="line">{% endnote %}</span><br><span class="line"></span><br></pre></td></tr></table></figure><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div></div></div><h1 id="Gallery相册图库"><a href="#Gallery相册图库" class="headerlink" title="Gallery相册图库"></a>Gallery相册图库</h1><div class="tabs" id="gallery相册图库"><ul class="nav-tabs"><li class="tab active"><button type="button" data-href="#gallery相册图库-1">Gallery相册图库</button></li><li class="tab"><button type="button" data-href="#gallery相册图库-2">Gallery相册</button></li></ul><div class="tab-contents"><div class="tab-item-content active" id="gallery相册图库-1"><p>一个图库集合。</p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line"><span class="xml"><span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"gallery-group-main"</span>></span></span></span><br><span class="line">{% galleryGroup name description link img-url %}</span><br><span class="line">{% galleryGroup name description link img-url %}</span><br><span class="line">{% galleryGroup name description link img-url %}</span><br><span class="line"><span class="xml"><span class="tag"></<span class="name">div</span>></span></span></span><br></pre></td></tr></table></figure><ul><li>name:图库名字</li><li>description:图库描述</li><li>link:连接到对应相册的地址</li><li>img-url:图库封面的地址</li></ul><p>· eg:</p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"><div class="gallery-group-main"></span><br><span class="line">{% galleryGroup '壁纸' '收藏的一些壁纸' '/Gallery/wallpaper' https://i.loli.net/2019/11/10/T7Mu8Aod3egmC4Q.png %}</span><br><span class="line">{% galleryGroup '漫威' '关于漫威的图片' '/Gallery/marvel' https://i.loli.net/2019/12/25/8t97aVlp4hgyBGu.jpg %}</span><br><span class="line">{% galleryGroup 'OH MY GIRL' '关于OH MY GIRL的图片' '/Gallery/ohmygirl' https://i.loli.net/2019/12/25/hOqbQ3BIwa6KWpo.jpg %}</span><br><span class="line"></div></span><br></pre></td></tr></table></figure><div class="gallery-group-main"> <figure class="gallery-group"> <img class="gallery-group-img" src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src='https://i.loli.net/2019/11/10/T7Mu8Aod3egmC4Q.png' alt="Group Image Gallery"> <figcaption> <div class="gallery-group-name">壁纸</div> <p>收藏的一些壁纸</p> <a href='/Gallery/wallpaper'></a> </figcaption> </figure> <figure class="gallery-group"> <img class="gallery-group-img" src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src='https://i.loli.net/2019/12/25/8t97aVlp4hgyBGu.jpg' alt="Group Image Gallery"> <figcaption> <div class="gallery-group-name">漫威</div> <p>关于漫威的图片</p> <a href='/Gallery/marvel'></a> </figcaption> </figure> <figure class="gallery-group"> <img class="gallery-group-img" src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src='https://i.loli.net/2019/12/25/hOqbQ3BIwa6KWpo.jpg' alt="Group Image Gallery"> <figcaption> <div class="gallery-group-name">OH MY GIRL</div> <p>关于OH MY GIRL的图片</p> <a href='/Gallery/ohmygirl'></a> </figcaption> </figure></div><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="gallery相册图库-2"><p>写法:</p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% gallery %}</span><br><span class="line">markdown 图片格式</span><br><span class="line">{% endgallery %}</span><br></pre></td></tr></table></figure><p>eg:</p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% gallery %}</span><br><span class="line">![](https://i.loli.net/2019/12/25/Fze9jchtnyJXMHN.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/ryLVePaqkYm4TEK.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/gEy5Zc1Ai6VuO4N.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/d6QHbytlSYO4FBG.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/6nepIJ1xTgufatZ.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/E7Jvr4eIPwUNmzq.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/mh19anwBSWIkGlH.jpg)</span><br><span class="line">![](https://i.loli.net/2019/12/25/2tu9JC8ewpBFagv.jpg)</span><br><span class="line">{% endgallery %}</span><br></pre></td></tr></table></figure><div class="justified-gallery"><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/Fze9jchtnyJXMHN.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/ryLVePaqkYm4TEK.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/gEy5Zc1Ai6VuO4N.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/d6QHbytlSYO4FBG.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/6nepIJ1xTgufatZ.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/E7Jvr4eIPwUNmzq.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/mh19anwBSWIkGlH.jpg"><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://i.loli.net/2019/12/25/2tu9JC8ewpBFagv.jpg"></p> </div><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div></div></div><h1 id="tag-hide"><a href="#tag-hide" class="headerlink" title="tag-hide"></a>tag-hide</h1><div class="note warning simple"><p>请注意,tag-hide内的标签外挂content内都不建议有h1 - h6 等标题。因为Toc会把隐藏内容标题也显示出来,而且当滚动屏幕时,如果隐藏内容没有显示出来,会导致Toc的滚动出现异常。</p></div><div class="tabs" id="gallery相册图库"><ul class="nav-tabs"><li class="tab active"><button type="button" data-href="#gallery相册图库-1">inline</button></li><li class="tab"><button type="button" data-href="#gallery相册图库-2">block</button></li><li class="tab"><button type="button" data-href="#gallery相册图库-3">Toggle</button></li></ul><div class="tab-contents"><div class="tab-item-content active" id="gallery相册图库-1"><p><code>inline</code> 在文本里面添加按钮隐藏内容,只限文字</p><p>( content不能包含英文逗号,可用<code>&sbquo;</code>)<br>用法: </p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% hideInline content,display,bg,color %}</span><br></pre></td></tr></table></figure><ul><li>content: 文本内容</li><li>display: 按钮显示的文字(可选)</li><li>bg: 按钮的背景颜色(可选)</li><li>color: 按钮文字的颜色(可选)</li></ul><p>eg:</p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">哪个英文字母最酷? {% hideInline <span class="strong">**因为西装裤(C装酷)**</span>,查看答案,#FF7242,#fff %}</span><br><span class="line"></span><br><span class="line">门里站着一个人? {% hideInline <span class="strong">**闪**</span> %}</span><br></pre></td></tr></table></figure><p>哪个英文字母最酷? <span class="hide-inline"><button type="button" class="hide-button button--animated" style="background-color: #FF7242;color: #fff">查看答案<br> </button><span class="hide-content"><strong>因为西装裤(C装酷)</strong></span></span></p><p>门里站着一个人? <span class="hide-inline"><button type="button" class="hide-button button--animated" style="">Click<br> </button><span class="hide-content"><strong>闪</strong></span></span></p><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="gallery相册图库-2"><p><code>block</code>独立的block隐藏内容,可以隐藏很多内容,包括图片,代码块等等</p><p>( display 不能包含英文逗号,可用<code>&sbquo;</code>)</p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% hideBlock display,bg,color %}</span><br><span class="line">content</span><br><span class="line">{% endhideBlock %}</span><br></pre></td></tr></table></figure><ul><li>content: 文本内容</li><li>display: 按钮显示的文字(可选)</li><li>bg: 按钮的背景颜色(可选)</li><li>color: 按钮文字的颜色(可选)</li></ul><p>eg: </p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">查看答案</span><br><span class="line">{% hideBlock 查看答案 %}</span><br><span class="line">傻子,怎么可能有答案</span><br><span class="line">{% endhideBlock %}</span><br></pre></td></tr></table></figure><p>查看答案</p><div class="hide-block"><button type="button" class="hide-button button--animated" style="">查看答案 </button><div class="hide-content"><p>傻子,怎么可能有答案</p></div></div><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="gallery相册图库-3"><p>如果你需要展示的内容太多,可以把它隐藏在收缩框里,需要时再把它展开。</p><p>( display 不能包含英文逗号,可用<code>&sbquo;</code>)</p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% hideToggle display,bg,color %}</span><br><span class="line">content</span><br><span class="line">{% endhideToggle %}</span><br></pre></td></tr></table></figure><p>eg: </p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% hideToggle Butterfly安装方法 %}</span><br><span class="line">在你的博客根目录里</span><br><span class="line"></span><br><span class="line">git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly</span><br><span class="line"></span><br><span class="line">如果想要安装比较新的dev分支,可以</span><br><span class="line"></span><br><span class="line">git clone -b dev https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly</span><br><span class="line"></span><br><span class="line">{% endhideToggle %}</span><br></pre></td></tr></table></figure><div class="hide-toggle" ><div class="hide-button toggle-title" style=""><i class="fas fa-caret-right fa-fw"></i><span>Butterfly安装方法</span></div> <div class="hide-content"><p>在你的博客根目录里</p><p>git clone -b master <a href="https://github.com/jerryc127/hexo-theme-butterfly.git">https://github.com/jerryc127/hexo-theme-butterfly.git</a> themes/Butterfly</p><p>如果想要安装比较新的dev分支,可以</p><p>git clone -b dev <a href="https://github.com/jerryc127/hexo-theme-butterfly.git">https://github.com/jerryc127/hexo-theme-butterfly.git</a> themes/Butterfly</p></div></div><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div></div></div><h1 id="mermaid"><a href="#mermaid" class="headerlink" title="mermaid"></a>mermaid</h1><div class="note warning simple"><p>mermaid标籤不允许嵌套于一些隐藏属性的标籤外挂,例如: tag-hide内的标籤外挂和tabs标籤外挂,这会导致mermaid图示无法正常显示,使用时请留意。<br>请不要压缩html代码,不然会导致mermaid显示异常</p></div><p>使用mermaid标签可以绘制Flowchart(流程图)、Sequence diagram(时序图 )、Class Diagram(类别图)、State Diagram(状态图)、Gantt(甘特图)和Pie Chart(圆形图),具体可以查看<a href="https://mermaid-js.github.io/mermaid/#/">mermaid</a>文档</p><p>eg: </p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% mermaid %}</span><br><span class="line">pie</span><br><span class="line"><span class="code"> title 饼图</span></span><br><span class="line"><span class="code"> "Calcium" : 42.96</span></span><br><span class="line"><span class="code"> "Potassium" : 50.05</span></span><br><span class="line"><span class="code"> "Magnesium" : 10.01</span></span><br><span class="line"><span class="code"> "Iron" : 5</span></span><br><span class="line"><span class="code">{% endmermaid %}</span></span><br></pre></td></tr></table></figure><div class="mermaid">pie title 饼图 "Calcium" : 42.96 "Potassium" : 50.05 "Magnesium" : 10.01 "Iron" : 5</div><h1 id="Tabs"><a href="#Tabs" class="headerlink" title="Tabs"></a>Tabs</h1><p>eg: </p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% tabs test4 %}</span><br><span class="line"><span class="xml"><span class="comment"><!-- tab 第一个Tab --></span></span></span><br><span class="line"><span class="strong">**tab名字为第一个Tab**</span></span><br><span class="line"><span class="xml"><span class="comment"><!-- endtab --></span></span></span><br><span class="line"></span><br><span class="line"><span class="xml"><span class="comment"><!-- tab @fab fa-apple-pay --></span></span></span><br><span class="line"><span class="strong">**只有图标 没有Tab名字**</span></span><br><span class="line"><span class="xml"><span class="comment"><!-- endtab --></span></span></span><br><span class="line"></span><br><span class="line"><span class="xml"><span class="comment"><!-- tab 炸弹@fas fa-bomb --></span></span></span><br><span class="line"><span class="strong">**名字+icon**</span></span><br><span class="line"><span class="xml"><span class="comment"><!-- endtab --></span></span></span><br><span class="line">{% endtabs %}</span><br></pre></td></tr></table></figure><div class="tabs" id="test4"><ul class="nav-tabs"><li class="tab active"><button type="button" data-href="#test4-1">第一个Tab</button></li><li class="tab"><button type="button" data-href="#test4-2"><i class="fab fa-apple-pay" style="text-align: center;"></i></button></li><li class="tab"><button type="button" data-href="#test4-3"><i class="fas fa-bomb"></i>炸弹</button></li></ul><div class="tab-contents"><div class="tab-item-content active" id="test4-1"><p><strong>tab名字为第一个Tab</strong></p><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="test4-2"><p><strong>只有图标 没有Tab名字</strong></p><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div><div class="tab-item-content" id="test4-3"><p><strong>名字+icon</strong></p><button type="button" class="tab-to-top" aria-label="scroll to top"><i class="fas fa-arrow-up"></i></button></div></div></div><h1 id="Button"><a href="#Button" class="headerlink" title="Button"></a>Button</h1><p>使用方法: </p><figure class="highlight markdown"><table><tr><td class="code"><pre><span class="line">{% btn [url],[text],[icon],[color] [style] [layout] [position] [size] %}</span><br><span class="line"></span><br><span class="line">[url] : 链接</span><br><span class="line">[text] : 按钮文字</span><br><span class="line">[icon] : [可选] 图标</span><br><span class="line">[color] : [可选] 按钮背景顔色(默认style时)</span><br><span class="line"><span class="code"> 按钮字体和边框顔色(outline时)</span></span><br><span class="line"><span class="code"> default/blue/pink/red/purple/orange/green</span></span><br><span class="line"><span class="code">[style] : [可选] 按钮样式 默认实心</span></span><br><span class="line"><span class="code"> outline/留空</span></span><br><span class="line"><span class="code">[layout] : [可选] 按钮佈局 默认为line</span></span><br><span class="line"><span class="code"> block/留空</span></span><br><span class="line"><span class="code">[position] : [可选] 按钮位置 前提是设置了layout为block 默认为左边</span></span><br><span class="line"><span class="code"> center/right/留空</span></span><br><span class="line"><span class="code">[size] : [可选] 按钮大小</span></span><br><span class="line"><span class="code"> larger/留空</span></span><br></pre></td></tr></table></figure><p>eg: </p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">This is my website, click the button {% btn 'https://evrstr.cc/',Butterfly %}</span><br><span class="line">This is my website, click the button {% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right %}</span><br><span class="line">This is my website, click the button {% btn 'https://evrstr.cc/',Butterfly,,outline %}</span><br><span class="line">This is my website, click the button {% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline %}</span><br><span class="line">This is my website, click the button {% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,larger %}</span><br><span class="line"></span><br><span class="line">---</span><br><span class="line"></span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,block %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,block center larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,block right outline larger %}</span><br><span class="line"></span><br><span class="line">---</span><br><span class="line"></span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,blue larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,pink larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,red larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,purple larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,orange larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,green larger %}</span><br><span class="line"></span><br><span class="line">---</span><br><span class="line"></span><br><span class="line"><div class="btn-center"></span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline blue larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline pink larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline red larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline purple larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline orange larger %}</span><br><span class="line">{% btn 'https://evrstr.cc/',Butterfly,far fa-hand-point-right,outline green larger %}</span><br><span class="line"></div></span><br><span class="line"></span><br><span class="line"></span><br></pre></td></tr></table></figure><p>This is my website, click the button <a class="btn-beautify button--animated " href="https://evrstr.cc/" title="Butterfly"><span>Butterfly</span></a><br>This is my website, click the button <a class="btn-beautify button--animated " href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><br>This is my website, click the button <a class="btn-beautify button--animated outline" href="https://evrstr.cc/" title="Butterfly"><span>Butterfly</span></a><br>This is my website, click the button <a class="btn-beautify button--animated outline" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><br>This is my website, click the button <a class="btn-beautify button--animated larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a></p><hr><a class="btn-beautify button--animated block" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated block center larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated block right outline larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><hr><a class="btn-beautify button--animated larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated blue larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated pink larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated red larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated purple larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated orange larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated green larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><hr><div class="btn-center"><a class="btn-beautify button--animated outline larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated outline blue larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated outline pink larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated outline red larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated outline purple larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated outline orange larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a><a class="btn-beautify button--animated outline green larger" href="https://evrstr.cc/" title="Butterfly"><i class="far fa-hand-point-right fa-fw"></i><span>Butterfly</span></a></div>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E6%97%A5%E5%B8%B8/">日常</category>
<category domain="https://evrstr.cc/tags/%E6%97%A5%E5%B8%B8/">日常</category>
<comments>https://evrstr.cc/posts/8a9a.html#disqus_thread</comments>
</item>
<item>
<title>在Hexo的Butterfly主题使用Twikoo评论配置黑暗模式</title>
<link>https://evrstr.cc/posts/8ea7.html</link>
<guid>https://evrstr.cc/posts/8ea7.html</guid>
<pubDate>Wed, 25 Nov 2020 05:52:32 GMT</pubDate>
<description><h1 id="已过期"><a href="#已过期" class="headerlink" title=" 已过期 "></a><font color = "red"> <strong>已过期</strong> </font></h1><h1</description>
<content:encoded><![CDATA[<h1 id="已过期"><a href="#已过期" class="headerlink" title=" 已过期 "></a><font color = "red"> <strong>已过期</strong> </font></h1><h1 id="在Hexo的Butterfly主题使用Twikoo评论配置黑暗模式"><a href="#在Hexo的Butterfly主题使用Twikoo评论配置黑暗模式" class="headerlink" title="在Hexo的Butterfly主题使用Twikoo评论配置黑暗模式"></a>在Hexo的Butterfly主题使用Twikoo评论配置黑暗模式</h1><p>首先确保Twikoo评论功能及显示正常</p><h2 id="效果"><a href="#效果" class="headerlink" title="效果"></a>效果</h2><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/1606284454347-1606284454342.png"></p><h1 id="适配黑暗模式教程"><a href="#适配黑暗模式教程" class="headerlink" title="适配黑暗模式教程"></a>适配黑暗模式教程</h1><ol><li>在主题文件夹下找到文件 <code>/source/css/_mode/darkmode.styl</code>并打开</li><li>在最后加入以下代码,一定要注意<font color=red>缩进</font></li></ol><figure class="highlight stylus"><table><tr><td class="code"><pre><span class="line"></span><br><span class="line"><span class="comment">/* Twikoo 评论 开始*/</span></span><br><span class="line"><span class="comment">/* 表单前标题 */</span></span><br><span class="line"><span class="selector-class">.el-input-group__append</span>,</span><br><span class="line"><span class="selector-class">.el-input-group__prepend</span> </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#292b2c</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 表单输入框 */</span></span><br><span class="line"><span class="selector-class">.el-input__inner</span> </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#000</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 评论输入框 */</span></span><br><span class="line"><span class="selector-class">.el-textarea__inner</span> </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#000</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 不显示评论数 */</span></span><br><span class="line"><span class="selector-class">.tk-comments-title</span> </span><br><span class="line"> <span class="attribute">display</span> none</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 加载时背景颜色 */</span></span><br><span class="line"><span class="selector-class">.el-loading-mask</span> </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#1d1f20</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 评论博主标签圆角 */</span></span><br><span class="line"><span class="selector-class">.tk-tag-green</span> </span><br><span class="line"> <span class="attribute">border-radius</span> <span class="number">4px</span></span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#67c23a</span>21 !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#e1f3d8</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 预览按钮 */</span></span><br><span class="line"><span class="selector-class">.el-button</span> </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#252627</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"> &:hover </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#307af6</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 发送按钮禁用状态 */</span></span><br><span class="line"><span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>,</span><br><span class="line"><span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>:active,</span><br><span class="line"><span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>:focus,</span><br><span class="line"><span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>:hover </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#307AF6</span>21 !important</span><br><span class="line"> <span class="attribute">border-color</span> rgba(<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>) !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#999999</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 发送按钮正常状态 */</span></span><br><span class="line"><span class="selector-class">.el-button--primary</span> </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">border-color</span> <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 预览框 */</span></span><br><span class="line">.tk-preview-container</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#B8B8B8</span></span><br><span class="line"> <span class="attribute">border</span>: <span class="number">1px</span> solid <span class="number">#f0f0f0</span></span><br><span class="line"></span><br><span class="line"><span class="comment">/* 更多评论的渐变遮罩 */</span></span><br><span class="line"><span class="selector-class">.tk-expand</span> </span><br><span class="line"> <span class="attribute">background</span> linear-gradient(rgba(<span class="number">29</span>, <span class="number">31</span>, <span class="number">32</span>, <span class="number">0</span>), rgba(<span class="number">29</span>, <span class="number">31</span>, <span class="number">32</span>, <span class="number">1</span>)) !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span></span><br><span class="line"></span><br><span class="line"><span class="comment">/* 评论时间 */</span></span><br><span class="line"><span class="selector-class">.tk-time</span> </span><br><span class="line"> <span class="attribute">color</span> <span class="number">#999999</span></span><br><span class="line"></span><br><span class="line"><span class="comment">/* Twikoo 评论 结束*/</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><p><font color=red>注意缩进!!!</font><br><font color=red>注意缩进!!!</font><br><font color=red>注意缩进!!!</font> </p><hr><p>如果不清楚如何缩进,可以<font color=red> 参考下面的代码添加</font>。<br>也直接使用下面的代码全部替换(主题版本3.3)。</p><figure class="highlight stylus"><table><tr><td class="code"><pre><span class="line"></span><br><span class="line">if hexo-config('darkmode.enable') || hexo-config('display_mode') == 'dark'</span><br><span class="line"> [data-theme=<span class="string">'dark'</span>]</span><br><span class="line"> --global-bg: darken(<span class="number">#121212</span>, <span class="number">2</span>)</span><br><span class="line"> --font-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --hr-border: alpha(#FFFFFF, .4)</span><br><span class="line"> --hr-before-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --search-bg: <span class="number">#121212</span></span><br><span class="line"> --search-input-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --search-result-title: alpha(<span class="number">#FFFFFF</span>, .<span class="number">9</span>)</span><br><span class="line"> --preloader-bg: darken(<span class="number">#121212</span>, <span class="number">2</span>)</span><br><span class="line"> --preloader-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --tab-<span class="attribute">border-color</span>: <span class="number">#2c2c2c</span></span><br><span class="line"> --tab-botton-bg: <span class="number">#2c2c2c</span></span><br><span class="line"> --tab-botton-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --tab-button-hover-bg: lighten(<span class="number">#121212</span>, <span class="number">15</span>)</span><br><span class="line"> --tab-button-active-bg: <span class="number">#121212</span></span><br><span class="line"> --card-bg: <span class="number">#121212</span></span><br><span class="line"> --sidebar-bg: <span class="number">#121212</span></span><br><span class="line"> --btn-hover-<span class="attribute">color</span>: lighten(<span class="number">#121212</span>, <span class="number">40</span>)</span><br><span class="line"> --btn-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --btn-bg: lighten(<span class="number">#121212</span>, <span class="number">5</span>)</span><br><span class="line"> --text-bg-hover: lighten(<span class="number">#121212</span>, <span class="number">15</span>)</span><br><span class="line"> --light-grey: alpha(<span class="number">#FFFFFF</span>, .<span class="number">7</span>)</span><br><span class="line"> --white: alpha(<span class="number">#FFFFFF</span>, .<span class="number">9</span>)</span><br><span class="line"> --text-highlight-color: alpha(#FFFFFF, .9)</span><br><span class="line"> --blockquote-color: alpha(#FFFFFF, .7)</span><br><span class="line"> --blockquote-bg: lighten(<span class="number">#121212</span>, <span class="number">10</span>)</span><br><span class="line"> --reward-pop: lighten(<span class="number">#121212</span>, <span class="number">10</span>)</span><br><span class="line"> --toc-link-color: alpha(#FFFFFF, .6)</span><br><span class="line"></span><br><span class="line"> <span class="selector-id">#web_bg</span>:before,</span><br><span class="line"> <span class="selector-id">#footer</span>:before,</span><br><span class="line"> <span class="selector-id">#page-header</span>:before</span><br><span class="line"> <span class="attribute">position</span>: absolute</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">100%</span></span><br><span class="line"> <span class="attribute">height</span>: <span class="number">100%</span></span><br><span class="line"> background-color: alpha($dark-black, .7)</span><br><span class="line"> <span class="attribute">content</span>: <span class="string">''</span></span><br><span class="line"></span><br><span class="line"> #article-container</span><br><span class="line"> code</span><br><span class="line"> <span class="attribute">background</span>: <span class="number">#2c2c2c</span></span><br><span class="line"></span><br><span class="line"> pre > code</span><br><span class="line"> <span class="attribute">background</span>: <span class="number">0</span></span><br><span class="line"></span><br><span class="line"> .note</span><br><span class="line"> code</span><br><span class="line"> <span class="attribute">background</span>: <span class="variable">$code</span>-background</span><br><span class="line"></span><br><span class="line"> .aplayer</span><br><span class="line"> filter: brightness(.8)</span><br><span class="line"></span><br><span class="line"> <span class="comment">// 頭部</span></span><br><span class="line"> #page-header</span><br><span class="line"> & > <span class="selector-id">#nav</span><span class="selector-class">.fixed</span>,</span><br><span class="line"> &<span class="selector-class">.no-top-img</span> #nav</span><br><span class="line"> background: alpha(#121212, .8)</span><br><span class="line"> <span class="attribute">box-shadow</span>: <span class="number">0</span> <span class="number">5px</span> <span class="number">6px</span> -<span class="number">5px</span> rgba(<span class="number">133</span>, <span class="number">133</span>, <span class="number">133</span>, <span class="number">0</span>)</span><br><span class="line"></span><br><span class="line"> <span class="comment">// 代碼框</span></span><br><span class="line"> #article-container</span><br><span class="line"> pre,</span><br><span class="line"> <span class="selector-class">.highlight</span>:not(.js-file-line-container)</span><br><span class="line"> <span class="attribute">background-color</span>: lighten(<span class="number">#121212</span>, <span class="number">2</span>) !important</span><br><span class="line"> color: alpha(#FFFFFF, .7) !important</span><br><span class="line"></span><br><span class="line"> <span class="selector-tag">figure</span>.highlight</span><br><span class="line"> <span class="attribute">box-shadow</span>: none</span><br><span class="line"></span><br><span class="line"> <span class="keyword">if</span> hexo-config(<span class="string">'highlight_settings'</span>) && hexo-config(<span class="string">'highlight_settings.enable'</span>)</span><br><span class="line"> <span class="selector-tag">table</span>::-webkit-scrollbar-thumb</span><br><span class="line"> <span class="attribute">background</span>: lighten(<span class="number">#121212</span>, <span class="number">5</span>)</span><br><span class="line"></span><br><span class="line"> <span class="selector-class">.line</span>:before</span><br><span class="line"> color: alpha(#FFFFFF, .7) !important</span><br><span class="line"></span><br><span class="line"> .hljs</span><br><span class="line"> <span class="attribute">background-color</span>: lighten(<span class="number">#121212</span>, <span class="number">2</span>) !important</span><br><span class="line"></span><br><span class="line"> pre[class*=<span class="string">'language-'</span>]::-webkit-scrollbar-thumb</span><br><span class="line"> <span class="attribute">background</span>: lighten(<span class="number">#121212</span>, <span class="number">5</span>)</span><br><span class="line"></span><br><span class="line"> .highlight-tools</span><br><span class="line"> <span class="attribute">background</span>: lighten(<span class="number">#121212</span>, <span class="number">3</span>) !important</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#90a4ae</span> !important</span><br><span class="line"></span><br><span class="line"> #post-comment</span><br><span class="line"> #comment-switch</span><br><span class="line"> <span class="keyword">if</span> hexo-config(<span class="string">'comments.text'</span>)</span><br><span class="line"> <span class="attribute">background</span>: <span class="number">#2c2c2c</span> !important</span><br><span class="line"></span><br><span class="line"> .switch-btn</span><br><span class="line"> filter: brightness(.8)</span><br><span class="line"></span><br><span class="line"> <span class="comment">// note</span></span><br><span class="line"> if hexo-config('note.style') == 'modern' || hexo-config('note.style') == 'flat'</span><br><span class="line"> .note</span><br><span class="line"> filter: brightness(.8)</span><br><span class="line"></span><br><span class="line"> <span class="comment">// hide-tags</span></span><br><span class="line"> <span class="selector-class">.hide-button</span>,</span><br><span class="line"> <span class="selector-class">.btn-beautify</span>,</span><br><span class="line"> <span class="selector-class">.mermaid</span>,</span><br><span class="line"> <span class="selector-class">.post-outdate-notice</span>,</span><br><span class="line"> <span class="selector-class">.error-img</span>,</span><br><span class="line"> <span class="selector-id">#article-container</span> <span class="selector-tag">iframe</span>,</span><br><span class="line"> <span class="selector-tag">img</span>,</span><br><span class="line"> .gist</span><br><span class="line"> filter: brightness(.8)</span><br><span class="line"></span><br><span class="line"> <span class="selector-id">#aside_content</span> <span class="selector-class">.aside-list</span> > <span class="selector-class">.aside-list-item</span>:not(:last-child)</span><br><span class="line"> border-bottom: 1px dashed alpha(#FFFFFF, .1)</span><br><span class="line"></span><br><span class="line"> <span class="comment">// 第三方</span></span><br><span class="line"> <span class="comment">// 插件 hexo-blog-encrypt</span></span><br><span class="line"> #hexo-blog-encrypt</span><br><span class="line"> <span class="selector-tag">label</span>,</span><br><span class="line"> input</span><br><span class="line"> color: alpha(#FFFFFF, .7) !important</span><br><span class="line"></span><br><span class="line"> input</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="number">#121212</span></span><br><span class="line"></span><br><span class="line"> <span class="comment">// Gitalk</span></span><br><span class="line"> #gitalk-container</span><br><span class="line"> filter: brightness(.8)</span><br><span class="line"></span><br><span class="line"> svg</span><br><span class="line"> fill: alpha(<span class="number">#FFFFFF</span>, .<span class="number">9</span>) !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">// Disqus and Disqusjs</span></span><br><span class="line"> #disqus_thread</span><br><span class="line"> #dsqjs</span><br><span class="line"> <span class="selector-class">.dsqjs-tab-active</span>,</span><br><span class="line"> .dsqjs-no-comment</span><br><span class="line"> color: alpha(#FFFFFF, .7)</span><br><span class="line"></span><br><span class="line"> .dsqjs-<span class="attribute">order</span>-label</span><br><span class="line"> <span class="attribute">background-color</span>: lighten(<span class="number">#121212</span>, <span class="number">5</span>)</span><br><span class="line"></span><br><span class="line"> .dsqjs-post-body</span><br><span class="line"> color: alpha(#FFFFFF, .7)</span><br><span class="line"></span><br><span class="line"> <span class="selector-tag">code</span>,</span><br><span class="line"> pre</span><br><span class="line"> <span class="attribute">background</span>: <span class="number">#2c2c2c</span></span><br><span class="line"></span><br><span class="line"> blockquote</span><br><span class="line"> color: alpha(#FFFFFF, .7)</span><br><span class="line"></span><br><span class="line"> <span class="selector-id">#artitalk_main</span> #lazy</span><br><span class="line"> <span class="attribute">background</span>: <span class="number">#121212</span></span><br><span class="line"></span><br><span class="line"> <span class="selector-id">#operare_artitalk</span> .c2</span><br><span class="line"> <span class="attribute">background</span>: <span class="number">#121212</span></span><br><span class="line"></span><br><span class="line"> <span class="comment">/* Twikoo 评论 开始*/</span></span><br><span class="line"> <span class="comment">/* 表单前标题 */</span></span><br><span class="line"> <span class="selector-class">.el-input-group__append</span>,</span><br><span class="line"> <span class="selector-class">.el-input-group__prepend</span> </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#292b2c</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 表单输入框 */</span></span><br><span class="line"> <span class="selector-class">.el-input__inner</span> </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#000</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 评论输入框 */</span></span><br><span class="line"> <span class="selector-class">.el-textarea__inner</span> </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#000</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 不显示评论数 */</span></span><br><span class="line"> <span class="selector-class">.tk-comments-title</span> </span><br><span class="line"> <span class="attribute">display</span> none</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 加载时背景颜色 */</span></span><br><span class="line"> <span class="selector-class">.el-loading-mask</span> </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#1d1f20</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 评论博主标签圆角 */</span></span><br><span class="line"> <span class="selector-class">.tk-tag-green</span> </span><br><span class="line"> <span class="attribute">border-radius</span> <span class="number">4px</span></span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#67c23a</span>21 !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#e1f3d8</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 预览按钮 */</span></span><br><span class="line"> <span class="selector-class">.el-button</span> </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#252627</span> !important</span><br><span class="line"> <span class="attribute">border</span> <span class="number">0px</span> solid <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"> &:hover </span><br><span class="line"> <span class="attribute">background</span> <span class="number">#307af6</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 发送按钮禁用状态 */</span></span><br><span class="line"> <span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>,</span><br><span class="line"> <span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>:active,</span><br><span class="line"> <span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>:focus,</span><br><span class="line"> <span class="selector-class">.el-button--primary</span><span class="selector-class">.is-disabled</span>:hover </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#307AF6</span>21 !important</span><br><span class="line"> <span class="attribute">border-color</span> rgba(<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>) !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#999999</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 发送按钮正常状态 */</span></span><br><span class="line"> <span class="selector-class">.el-button--primary</span> </span><br><span class="line"> <span class="attribute">background-color</span> <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">border-color</span> <span class="number">#307af6</span> !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span> !important</span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 预览框 */</span></span><br><span class="line"> .tk-preview-container</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#B8B8B8</span></span><br><span class="line"> <span class="attribute">border</span>: <span class="number">1px</span> solid <span class="number">#f0f0f0</span></span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 更多评论的渐变遮罩 */</span></span><br><span class="line"> <span class="selector-class">.tk-expand</span> </span><br><span class="line"> <span class="attribute">background</span> linear-gradient(rgba(<span class="number">29</span>, <span class="number">31</span>, <span class="number">32</span>, <span class="number">0</span>), rgba(<span class="number">29</span>, <span class="number">31</span>, <span class="number">32</span>, <span class="number">1</span>)) !important</span><br><span class="line"> <span class="attribute">color</span> <span class="number">#B8B8B8</span></span><br><span class="line"></span><br><span class="line"> <span class="comment">/* 评论时间 */</span></span><br><span class="line"> <span class="selector-class">.tk-time</span> </span><br><span class="line"> <span class="attribute">color</span> <span class="number">#999999</span></span><br><span class="line"> </span><br><span class="line"> <span class="comment">/* Twikoo 评论 结束*/</span></span><br><span class="line"></span><br><span class="line"></span><br></pre></td></tr></table></figure>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E7%BE%8E%E5%8C%96/">美化</category>
<category domain="https://evrstr.cc/tags/%E4%B8%BB%E9%A2%98%E7%BE%8E%E5%8C%96/">主题美化</category>
<comments>https://evrstr.cc/posts/8ea7.html#disqus_thread</comments>
</item>
<item>
<title>原生JS实现最简单的图片懒加载</title>
<link>https://evrstr.cc/posts/56b5.html</link>
<guid>https://evrstr.cc/posts/56b5.html</guid>
<pubDate>Sat, 21 Nov 2020 16:43:15 GMT</pubDate>
<description><h1 id="懒加载"><a href="#懒加载" class="headerlink"</description>
<content:encoded><![CDATA[<h1 id="懒加载"><a href="#懒加载" class="headerlink" title="懒加载"></a>懒加载</h1><p>什么是懒加载<br>懒加载其实就是延迟加载,是一种对网页性能优化的方式,比如当访问一个页面的时候,优先显示可视区域的图片而不一次性加载所有图片,当需要显示的时候再发送图片请求,避免打开网页时加载过多资源。</p><h1 id="什么时候用"><a href="#什么时候用" class="headerlink" title="什么时候用"></a>什么时候用</h1><p>当页面中需要一次性载入很多图片的时候,往往都是需要用懒加载的。</p><h1 id="懒加载原理"><a href="#懒加载原理" class="headerlink" title="懒加载原理"></a>懒加载原理</h1><p>我们都知道HTML中的<img>标签是代表文档中的一个图像。。说了个废话。。<br><img>标签有一个属性是src,用来表示图像的URL,当这个属性的值不为空时,浏览器就会根据这个值发送请求。如果没有src属性,就不会发送请求。<br>嗯?貌似这点可以利用一下?<br>我先不设置src,需要的时候再设置?<br>nice,就是这样。<br>我们先不给<img>设置src,把图片真正的URL放在另一个属性data-src中,在需要的时候也就是图片进入可视区域的之前,将URL取出放到src中。</p><h1 id="实现"><a href="#实现" class="headerlink" title="实现"></a>实现</h1><p>查看 <a href="https://live2d-model.evrstr.cc/">live2d</a> 就是用以上方法实现的懒加载。</p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/1606283437377-1606283437359.png"></p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/JavaScript/">JavaScript</category>
<category domain="https://evrstr.cc/tags/js/">js</category>
<category domain="https://evrstr.cc/tags/lazyload/">lazyload</category>
<category domain="https://evrstr.cc/tags/%E6%87%92%E5%8A%A0%E8%BD%BD/">懒加载</category>
<comments>https://evrstr.cc/posts/56b5.html#disqus_thread</comments>
</item>
<item>
<title>Github Actions教程:运行python代码并Push到远端仓库</title>
<link>https://evrstr.cc/posts/92d7.html</link>
<guid>https://evrstr.cc/posts/92d7.html</guid>
<pubDate>Sat, 21 Nov 2020 13:47:47 GMT</pubDate>
<description><p>我自己做了一个网站,这个网站就是 <a href="https://live2d-model.evrstr.cc/">在线选老婆.jpg</a></description>
<content:encoded><![CDATA[<p>我自己做了一个网站,这个网站就是 <a href="https://live2d-model.evrstr.cc/">在线选老婆.jpg</a> 这个网站会使用一个python脚本来生成json数据。</p><p>具体生成的方法是python脚本会读取目录下的live2d模型文件及预览图片,将name,priveew,json地址放到一个dat.json文件里。</p><p>当然上面所有的步骤都是自动化实现的,总结如下:</p><ol><li>我本地新增live2d模型文件夹,然后push到github</li><li>我的push操作会触发实现设定好的action</li><li>action 执行python脚本生成json文件</li></ol><p>action代码设置如下:</p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"># 当有改动推送到master分支时,启动Action</span><br><span class="line">name: 自动部署</span><br><span class="line"></span><br><span class="line">on:</span><br><span class="line"> push:</span><br><span class="line"> branches:</span><br><span class="line"> - master</span><br><span class="line"></span><br><span class="line"> release:</span><br><span class="line"> types:</span><br><span class="line"> - published</span><br><span class="line"></span><br><span class="line">jobs:</span><br><span class="line"> build:</span><br><span class="line"> runs-on: ubuntu-latest</span><br><span class="line"></span><br><span class="line"> steps:</span><br><span class="line"> - name: 检查分支</span><br><span class="line"> uses: actions/checkout@v2</span><br><span class="line"></span><br><span class="line"> - name: 安装 Python 3.7</span><br><span class="line"> uses: actions/setup-python@v1</span><br><span class="line"> with:</span><br><span class="line"> python-version: 3.7</span><br><span class="line"></span><br><span class="line"> - name: 安装模块</span><br><span class="line"> run: |</span><br><span class="line"> pip install -r requirements.txt</span><br><span class="line"></span><br><span class="line"> - name: 生成json文件</span><br><span class="line"> run: |</span><br><span class="line"> export TZ='Asia/Shanghai'</span><br><span class="line"> python build_linux.py</span><br><span class="line"></span><br><span class="line"> - name: 暂存提交</span><br><span class="line"> run: |</span><br><span class="line"> git config --global user.name 'evrstr'</span><br><span class="line"> git config --global user.email '[email protected]'</span><br><span class="line"> export TZ='Asia/Shanghai'</span><br><span class="line"> git add .</span><br><span class="line"> git commit -m "update" -a</span><br><span class="line"></span><br><span class="line"> - name: 推送</span><br><span class="line"> uses: ad-m/github-push-action@master</span><br><span class="line"> with:</span><br><span class="line"> github_token: ${{ secrets.GITHUB_TOKEN }}</span><br></pre></td></tr></table></figure><ul><li>最重要的一点:最后一行github_token需要注意,这个其实就相当于你的token。这个设置方法是进入你在个人设置页面(即Settings,不是仓库里的Settings),选择Developer settings>Personal access tokens>Generate new token,设置名字为GITHUB_TOKEN,然后勾选repo,admin:repo_hook,workflow等选项,最后点击Generate token即可。</li></ul>]]></content:encoded>
<category domain="https://evrstr.cc/categories/python/">python</category>
<category domain="https://evrstr.cc/tags/python/">python</category>
<category domain="https://evrstr.cc/tags/Github-Actions/">Github Actions</category>
<comments>https://evrstr.cc/posts/92d7.html#disqus_thread</comments>
</item>
<item>
<title>总结js常用的dom操作(js的dom操作API)</title>
<link>https://evrstr.cc/posts/608.html</link>
<guid>https://evrstr.cc/posts/608.html</guid>
<pubDate>Sat, 14 Nov 2020 08:06:48 GMT</pubDate>
<description><h1 id="前言"><a href="#前言" class="headerlink"</description>
<content:encoded><![CDATA[<h1 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h1><p>很多同学用惯了jquery操作dom,让他们用js操作的时候,常常力不从心,本文总结了常用的js的dom操作方法,供大家翻阅!其实说起js操作dom,我很久很久之前有篇文章,jquery属性的相关js实现方法,里面囊括了很大一部分js操作dom的常用方法,但是不是很系统。不能说是API,今天来系统总结一下!</p><h1 id="节点查找API"><a href="#节点查找API" class="headerlink" title="节点查找API"></a>节点查找API</h1><blockquote><p>document.getElementById :根据ID查找元素,大小写敏感,如果有多个结果,只返回第一个;<br>document.getElementsByClassName :根据类名查找元素,多个类名用空格分隔,返回一个 HTMLCollection 。注意兼容性为IE9+(含)。另外,不仅仅是> document,其它元素也支持 getElementsByClassName 方法;<br>document.getElementsByTagName :根据标签查找元素, * 表示查询所有标签,返回一个 HTMLCollection 。<br>document.getElementsByName :根据元素的name属性查找,返回一个 NodeList 。<br>document.querySelector :返回单个Node,IE8+(含),如果匹配到多个结果,只返回第一个。<br>document.querySelectorAll :返回一个 NodeList ,IE8+(含)。<br>document.forms :获取当前页面所有form,返回一个 HTMLCollection ;</p></blockquote><h1 id="节点创建API"><a href="#节点创建API" class="headerlink" title="节点创建API"></a>节点创建API</h1><h2 id="createElement创建元素:"><a href="#createElement创建元素:" class="headerlink" title="createElement创建元素:"></a>createElement创建元素:</h2><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">var elem = document.createElement("div"); </span><br><span class="line">elem.id = 'haorooms'; </span><br><span class="line">elem.style = 'color: red'; </span><br><span class="line">elem.innerHTML = '我是新创建的haorooms测试节点'; </span><br><span class="line">document.body.appendChild(elem); </span><br></pre></td></tr></table></figure><p>通过 createElement 创建的元素并不属于 document 对象,它只是创建出来,并未添加到html文档中,要调用 appendChild 或 insertBefore 等方法将其添加到HTML文档中。</p><h2 id="createTextNode创建文本节点:"><a href="#createTextNode创建文本节点:" class="headerlink" title="createTextNode创建文本节点:"></a>createTextNode创建文本节点:</h2><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">var node = document.createTextNode("我是文本节点"); </span><br><span class="line">document.body.appendChild(node); </span><br></pre></td></tr></table></figure><h2 id="cloneNode-克隆一个节点:"><a href="#cloneNode-克隆一个节点:" class="headerlink" title="cloneNode 克隆一个节点:"></a>cloneNode 克隆一个节点:</h2><p>node.cloneNode(true/false) ,它接收一个bool参数,用来表示是否复制子元素。</p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">var from = document.getElementById("test"); </span><br><span class="line">var clone = from.cloneNode(true); </span><br><span class="line">clone.id = "test2"; </span><br><span class="line">document.body.appendChild(clone); </span><br></pre></td></tr></table></figure><p>克隆节点并不会克隆事件,除非事件是用这种方式绑定的,用 addEventListener 和 node.onclick=xxx; 方式绑定的都不会复制。</p><h2 id="createDocumentFragment"><a href="#createDocumentFragment" class="headerlink" title="createDocumentFragment"></a>createDocumentFragment</h2><p>本方法用来创建一个 DocumentFragment ,也就是文档碎片,它表示一种轻量级的文档,主要是用来存储临时节点,大量操作DOM时用它可以大大提升性能。</p><h1 id="节点修改API"><a href="#节点修改API" class="headerlink" title="节点修改API"></a>节点修改API</h1><ol><li><p>appendChild<br>语法:</p><blockquote><p>parent.appendChild(child);</p></blockquote></li><li><p>insertBefore</p><blockquote><p>parentNode.insertBefore(newNode, refNode); </p></blockquote></li><li><p>insertAdjacentHTML</p><blockquote><p>//js谷歌浏览器,火狐浏览器,IE8+<br>el.insertAdjacentHTML(‘beforebegin’, htmlString);</p></blockquote></li></ol><p>关于insertAdjacentHTML,这个API比较好用,具体可以看:<a href="https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentHTML">https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentHTML</a></p><ol start="4"><li><p>Element.insertAdjacentElement()<br>用法和上面类似,</p><blockquote><p>targetElement.insertAdjacentElement(position, element);</p></blockquote></li><li><p>removeChild<br>removeChild用于删除指定的子节点并返回子节点,语法:</p><blockquote><p>var deletedChild = parent.removeChild(node);</p></blockquote></li></ol><p>deletedChild指向被删除节点的引用,它仍然存在于内存中,可以对其进行下一步操作。另外,如果被删除的节点不是其子节点,则将会报错。一般删除节点都是这么删的:</p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">function removeNode(node) </span><br><span class="line">{ </span><br><span class="line"> if(!node) return; </span><br><span class="line"> if(node.parentNode) node.parentNode.removeChild(node); </span><br><span class="line">} </span><br></pre></td></tr></table></figure><ol start="6"><li>replaceChild<br>replaceChild用于将一个节点替换另一个节点,语法:<blockquote><p>parent.replaceChild(newChild, oldChild); </p></blockquote></li></ol><h1 id="节点关系API"><a href="#节点关系API" class="headerlink" title="节点关系API"></a>节点关系API</h1><h2 id="父关系API"><a href="#父关系API" class="headerlink" title="父关系API"></a>父关系API</h2><blockquote><p>parentNode :每个节点都有一个parentNode属性,它表示元素的父节点。Element的父节点可能是Element,Document或DocumentFragment;<br>parentElement :返回元素的父元素节点,与parentNode的区别在于,其父节点必须是一个Element元素,如果不是,则返回null;</p></blockquote><h2 id="子关系API"><a href="#子关系API" class="headerlink" title="子关系API"></a>子关系API</h2><blockquote><p>children :返回一个实时的 HTMLCollection ,子节点都是Element,IE9以下浏览器不支持;<br>childNodes :返回一个实时的 NodeList ,表示元素的子节点列表,注意子节点可能包含文本节点、注释节点等;<br>firstChild :返回第一个子节点,不存在返回null,与之相对应的还有一个 firstElementChild ;<br>lastChild :返回最后一个子节点,不存在返回null,与之相对应的还有一个 lastElementChild ;</p></blockquote><h2 id="兄弟关系型API"><a href="#兄弟关系型API" class="headerlink" title="兄弟关系型API"></a>兄弟关系型API</h2><blockquote><p>previousSibling :节点的前一个节点,如果不存在则返回null。注意有可能拿到的节点是文本节点或注释节点,与预期的不符,要进行处理一下。<br>nextSibling :节点的后一个节点,如果不存在则返回null。注意有可能拿到的节点是文本节点,与预期的不符,要进行处理一下。<br>previousElementSibling :返回前一个元素节点,前一个节点必须是Element,注意IE9以下浏览器不支持。<br>nextElementSibling :返回后一个元素节点,后一个节点必须是Element,注意IE9以下浏览器不支持。</p></blockquote><h1 id="元素属性型API"><a href="#元素属性型API" class="headerlink" title="元素属性型API"></a>元素属性型API</h1><h2 id="setAttribute-给元素设置属性:"><a href="#setAttribute-给元素设置属性:" class="headerlink" title="setAttribute 给元素设置属性:"></a>setAttribute 给元素设置属性:</h2><blockquote><p>element.setAttribute(name, value); </p></blockquote><p>其中name是特性名,value是特性值。如果元素不包含该特性,则会创建该特性并赋值。</p><h2 id="getAttribute"><a href="#getAttribute" class="headerlink" title="getAttribute"></a>getAttribute</h2><p>getAttribute返回指定的特性名相应的特性值,如果不存在,则返回null:</p><blockquote><p>var value = element.getAttribute(“id”); </p></blockquote><h2 id="hasAttribute"><a href="#hasAttribute" class="headerlink" title="hasAttribute"></a>hasAttribute</h2><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">var result = element.hasAttribute(name);</span><br><span class="line">var foo = document.getElementById("foo"); </span><br><span class="line">if (foo.hasAttribute("bar")) { </span><br><span class="line"> // do something</span><br><span class="line">}</span><br><span class="line"></span><br></pre></td></tr></table></figure><h2 id="dataset"><a href="#dataset" class="headerlink" title="dataset"></a>dataset</h2><p>获取html data-开头的属性,用法如下:</p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"><div id="user" data-id="1234567890" data-user="johndoe" data-date-of-birth>John Doe</div></span><br><span class="line"></span><br><span class="line">let el = document.querySelector('#user');</span><br><span class="line"></span><br><span class="line">// el.id == 'user'</span><br><span class="line">// el.dataset.id === '1234567890'</span><br><span class="line">// el.dataset.user === 'johndoe'</span><br><span class="line">// el.dataset.dateOfBirth === ''</span><br><span class="line"></span><br><span class="line">el.dataset.dateOfBirth = '1960-10-03'; // set the DOB.</span><br><span class="line"></span><br><span class="line">// 'someDataAttr' in el.dataset === false</span><br><span class="line">el.dataset.someDataAttr = 'mydata';</span><br><span class="line">// 'someDataAttr' in el.dataset === true</span><br></pre></td></tr></table></figure><h1 id="CSS样式相关API"><a href="#CSS样式相关API" class="headerlink" title="CSS样式相关API"></a>CSS样式相关API</h1><h2 id="直接修改元素的样式"><a href="#直接修改元素的样式" class="headerlink" title="直接修改元素的样式"></a>直接修改元素的样式</h2><blockquote><p>elem.style.color = ‘red’;<br>elem.style.setProperty(‘font-size’, ‘16px’);<br>elem.style.removeProperty(‘color’); </p></blockquote><h2 id="动态添加样式规则"><a href="#动态添加样式规则" class="headerlink" title="动态添加样式规则"></a>动态添加样式规则</h2><blockquote><p>var style = document.createElement(‘style’);<br>style.innerHTML = ‘body{color:red} #top:hover{background-color: red;color: white;}’;<br>document.head.appendChild(style); </p></blockquote><h2 id="classList获取样式class"><a href="#classList获取样式class" class="headerlink" title="classList获取样式class"></a>classList获取样式class</h2><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">// div is an object reference to a <div> element with class="foo bar"</span><br><span class="line">div.classList.remove("foo");</span><br><span class="line">div.classList.add("anotherclass");</span><br><span class="line"></span><br><span class="line">// if visible is set remove it, otherwise add it</span><br><span class="line">div.classList.toggle("visible");</span><br><span class="line"></span><br><span class="line">// add/remove visible, depending on test conditional, i less than 10</span><br><span class="line">div.classList.toggle("visible", i < 10 );</span><br><span class="line"></span><br><span class="line">alert(div.classList.contains("foo"));</span><br><span class="line"></span><br><span class="line">// add or remove multiple classes</span><br><span class="line">div.classList.add("foo", "bar", "baz");</span><br><span class="line">div.classList.remove("foo", "bar", "baz");</span><br><span class="line"></span><br><span class="line">// add or remove multiple classes using spread syntax</span><br><span class="line">let cls = ["foo", "bar"];</span><br><span class="line">div.classList.add(...cls); </span><br><span class="line">div.classList.remove(...cls);</span><br><span class="line"></span><br><span class="line">// replace class "foo" with class "bar"</span><br><span class="line">div.classList.replace("foo", "bar");</span><br></pre></td></tr></table></figure><h2 id="window-getComputedStyle"><a href="#window-getComputedStyle" class="headerlink" title="window.getComputedStyle"></a>window.getComputedStyle</h2><p>通过 element.sytle.xxx 只能获取到内联样式,借助 window.getComputedStyle 可以获取应用到元素上的所有样式,IE8或更低版本不支持此方法。</p><blockquote><p>var style = window.getComputedStyle(element[, pseudoElt]); </p></blockquote><h1 id="获取相关高度API"><a href="#获取相关高度API" class="headerlink" title="获取相关高度API"></a>获取相关高度API</h1><h2 id="getBoundingClientRect"><a href="#getBoundingClientRect" class="headerlink" title="getBoundingClientRect"></a>getBoundingClientRect</h2><p>getBoundingClientRect 用来返回元素的大小以及相对于浏览器可视窗口的位置,用法如下:</p><blockquote><p>var clientRect = element.getBoundingClientRect(); </p></blockquote><p>clientRect是一个 DOMRect 对象,包含width、height、left、top、right、bottom,它是相对于窗口顶部而不是文档顶部,滚动页面时它们的值是会发生变化的。</p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/JavaScript/">JavaScript</category>
<category domain="https://evrstr.cc/tags/JavaScript/">JavaScript</category>
<category domain="https://evrstr.cc/tags/DOM/">DOM</category>
<category domain="https://evrstr.cc/tags/API/">API</category>
<comments>https://evrstr.cc/posts/608.html#disqus_thread</comments>
</item>
<item>
<title>笔记-13-JavaScript初探</title>
<link>https://evrstr.cc/posts/ec24.html</link>
<guid>https://evrstr.cc/posts/ec24.html</guid>
<pubDate>Fri, 13 Nov 2020 09:52:21 GMT</pubDate>
<description><h1 id="登录页面示例"><a href="#登录页面示例" class="headerlink" title="登录页面示例"></a>登录页面示例</h1><p>点击明文和密码切换显示。</p>
<p><img src=</description>
<content:encoded><![CDATA[<h1 id="登录页面示例"><a href="#登录页面示例" class="headerlink" title="登录页面示例"></a>登录页面示例</h1><p>点击明文和密码切换显示。</p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/1605261006800-myloging.gif"></p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"> * {</span><br><span class="line"> margin: 0;</span><br><span class="line"> padding: 0;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.box1</span> {</span></span><br><span class="line"> width: 600px;</span><br><span class="line"> height: 400px;</span><br><span class="line"> margin: 100px auto;</span><br><span class="line"> text-align: center;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.myform</span> {</span></span><br><span class="line"> margin: 60px, auto;</span><br><span class="line"> padding-top: 30px;</span><br><span class="line"> position: relative;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.myform</span> <span class="selector-tag">input</span> {</span></span><br><span class="line"> width: 500px;</span><br><span class="line"> height: 36px;</span><br><span class="line"> margin-bottom: 12px;</span><br><span class="line"> font-size: 18px;</span><br><span class="line"> outline: none;</span><br><span class="line"> border: none;</span><br><span class="line"> border-bottom: 1px solid rgb(255, 228, 228);</span><br><span class="line"> padding-left: 8px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.myform</span> <span class="selector-id">#sub</span> {</span></span><br><span class="line"> height: 48px;</span><br><span class="line"> margin-top: 18px;</span><br><span class="line"> margin-left: 72px;</span><br><span class="line"> outline: none;</span><br><span class="line"> border: 1px solid skyblue;</span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#FF3C00</span>;</span></span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#eee</span>;</span></span><br><span class="line"> border-radius: 24px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.myform</span> <span class="selector-tag">label</span> {</span></span><br><span class="line"> padding: 0 12px;</span><br><span class="line"> color: skyblue;</span><br><span class="line"> margin-bottom: 12px;</span><br><span class="line"> font-size: 18px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.myform</span> <span class="selector-tag">img</span> {</span></span><br><span class="line"> width: 24px;</span><br><span class="line"> height: 24px;</span><br><span class="line"> position: absolute;</span><br><span class="line"> right: 24px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-pseudo">::-webkit-input-placeholder</span> {</span></span><br><span class="line"><span class="css"> <span class="comment">/* WebKit browsers */</span></span></span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-tag">rgba</span>(0, 0, 0, <span class="selector-class">.2</span>);</span></span><br><span class="line"> font-size: 14px;</span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"box1"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h1</span> <span class="attr">class</span>=<span class="string">"title"</span>></span>登录<span class="tag"></<span class="name">h1</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">form</span> <span class="attr">action</span>=<span class="string">""</span> <span class="attr">class</span>=<span class="string">"myform"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"username"</span>></span>用户名<span class="tag"></<span class="name">label</span>></span><span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"text"</span> <span class="attr">id</span>=<span class="string">"username"</span> <span class="attr">placeholder</span>=<span class="string">"账号"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"pwd"</span>></span>密<span class="symbol">&nbsp;</span><span class="symbol">&nbsp;</span><span class="symbol">&nbsp;</span>码<span class="tag"></<span class="name">label</span>></span><span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"password"</span> <span class="attr">id</span>=<span class="string">"pwd"</span> <span class="attr">placeholder</span>=<span class="string">"密码"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"eye-close.png"</span> <span class="attr">alt</span>=<span class="string">""</span> <span class="attr">id</span>=<span class="string">"eye"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"submit"</span> <span class="attr">value</span>=<span class="string">"登录"</span> <span class="attr">id</span>=<span class="string">"sub"</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">form</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"><<span class="name">script</span>></span></span><br><span class="line"><span class="javascript"> <span class="keyword">var</span> eye = <span class="built_in">document</span>.getElementById(<span class="string">'eye'</span>);</span></span><br><span class="line"><span class="javascript"> <span class="keyword">var</span> pwd = <span class="built_in">document</span>.getElementById(<span class="string">'pwd'</span>);</span></span><br><span class="line"><span class="javascript"> eye.onclick = <span class="function"><span class="keyword">function</span>(<span class="params"></span>) </span>{</span></span><br><span class="line"><span class="javascript"> <span class="built_in">console</span>.log(pwd.type);</span></span><br><span class="line"><span class="javascript"> <span class="keyword">if</span> (pwd.type == <span class="string">'password'</span>) {</span></span><br><span class="line"><span class="javascript"> eye.src = (<span class="string">'eye.png'</span>);</span></span><br><span class="line"><span class="javascript"> pwd.type = <span class="string">'text'</span>;</span></span><br><span class="line"><span class="javascript"> } <span class="keyword">else</span> {</span></span><br><span class="line"><span class="javascript"> pwd.type = <span class="string">'password'</span>;</span></span><br><span class="line"><span class="javascript"> eye.src = (<span class="string">'eye-close.png'</span>);</span></span><br><span class="line"> }</span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">script</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure>]]></content:encoded>
<category domain="https://evrstr.cc/categories/JavaScript/">JavaScript</category>
<category domain="https://evrstr.cc/tags/JavaScript/">JavaScript</category>
<comments>https://evrstr.cc/posts/ec24.html#disqus_thread</comments>
</item>
<item>
<title>笔记-012-综合案例 学成在线</title>
<link>https://evrstr.cc/posts/67a6.html</link>
<guid>https://evrstr.cc/posts/67a6.html</guid>
<pubDate>Wed, 11 Nov 2020 08:14:59 GMT</pubDate>
<description><h1 id="学成在线案例"><a href="#学成在线案例" class="headerlink" title="学成在线案例"></a>学成在线案例</h1><p>对前面所学知识的巩固。</p>
<p><img src=</description>
<content:encoded><![CDATA[<h1 id="学成在线案例"><a href="#学成在线案例" class="headerlink" title="学成在线案例"></a>学成在线案例</h1><p>对前面所学知识的巩固。</p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201111162017.png"></p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201111162050.png"></p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">link</span> <span class="attr">rel</span>=<span class="string">"stylesheet"</span> <span class="attr">href</span>=<span class="string">"css/index.css"</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="comment"><!-- 头部 start --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"header w"</span>></span></span><br><span class="line"> <span class="comment"><!-- logo 部分 --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"logo"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/logo.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- 导航栏 --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"nav"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>首页<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>课程<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>职业规划<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- 搜索模块 --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"search"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"text"</span> <span class="attr">value</span>=<span class="string">"输入关键词"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">button</span>></span><span class="tag"></<span class="name">button</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- user --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"user"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/user.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span> qq-lilei</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- 头部 end --></span></span><br><span class="line"> <span class="comment"><!-- banner 部分 start --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"banner"</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="comment"><!-- 版心 --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"w"</span>></span></span><br><span class="line"> <span class="comment"><!-- 左侧导航栏 --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"subnav"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>前端开发 <span class="tag"><<span class="name">span</span>></span> <span class="symbol">&gt;</span> <span class="tag"></<span class="name">span</span>></span><span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- 课程部分 --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"course"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h2</span>></span>我的课程表<span class="tag"></<span class="name">h2</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"bd"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span>继续学习 程序语言设计<span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">p</span>></span> 正在学习-使用对象<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span>继续学习 程序语言设计<span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">p</span>></span> 正在学习-使用对象<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span>继续学习 程序语言设计<span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">p</span>></span> 正在学习-使用对象<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span> <span class="attr">class</span>=<span class="string">"more"</span>></span>全部课程<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- banner 部分 end --></span></span><br><span class="line"> <span class="comment"><!-- 精品推荐 start --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"goods w"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h3</span>></span>精品推荐<span class="tag"></<span class="name">h3</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>jQuery<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>jQuery<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>jQuery<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>jQuery<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>jQuery<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span> <span class="attr">class</span>=<span class="string">"mod"</span>></span>修改兴趣<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!-- 精品推荐 end --></span></span><br><span class="line"> <span class="comment"><!-- 精品推荐大模块 start --></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"box w"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"box-hd"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h3</span>></span>精品推荐<span class="tag"></<span class="name">h3</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>查看全部<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"box-bd"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span> <span class="attr">class</span>=<span class="string">"clearfix"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"img/pic.png"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span>></span></span><br><span class="line"> Think PHP 5.0 博客系统实战项目演练</span><br><span class="line"> <span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">span</span>></span>高级<span class="tag"></<span class="name">span</span>></span> • 1125人在学习</span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><figure class="highlight css"><table><tr><td class="code"><pre><span class="line">* {</span><br><span class="line"> <span class="attribute">margin</span>: <span class="number">0</span>;</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">0</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-tag">body</span> {</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="number">#f3f5f7</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">list-style</span>: none;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-tag">a</span> {</span><br><span class="line"> <span class="attribute">text-decoration</span>: none;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.w</span> {</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">1200px</span>;</span><br><span class="line"> <span class="attribute">height</span>: auto;</span><br><span class="line"> <span class="attribute">margin</span>: auto;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.header</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="attribute">margin</span>: <span class="number">30px</span> auto;</span><br><span class="line"> <span class="comment">/* background-color: pink; */</span></span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.logo</span> {</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">198px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.nav</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">margin-left</span>: <span class="number">60px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.nav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">margin</span>: <span class="number">0</span> <span class="number">15px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.nav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span> {</span><br><span class="line"> <span class="attribute">display</span>: inline-block;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">0</span> <span class="number">10px</span>;</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">18px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#050505</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.nav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span><span class="selector-pseudo">:hover</span> {</span><br><span class="line"> <span class="attribute">border-bottom</span>: solid;</span><br><span class="line"> <span class="attribute">border-bottom-width</span>: <span class="number">2px</span>;</span><br><span class="line"> <span class="attribute">border-bottom-color</span>: <span class="number">#00a4ff</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#00a4ff</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.search</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">411px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="comment">/* background-color: skyblue; */</span></span><br><span class="line"> <span class="attribute">margin-left</span>: <span class="number">70px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.search</span> <span class="selector-tag">input</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">345px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">40px</span>;</span><br><span class="line"> <span class="attribute">border</span>: <span class="number">1px</span> solid <span class="number">#00a4ff</span>;</span><br><span class="line"> <span class="attribute">border-right</span>: none;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#bfbfbf</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">14px</span>;</span><br><span class="line"> <span class="attribute">padding-left</span>: <span class="number">15px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.search</span> <span class="selector-tag">button</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">50px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="attribute">background-color</span>: blue;</span><br><span class="line"> <span class="attribute">border</span>: none;</span><br><span class="line"> <span class="attribute">background</span>: <span class="built_in">url</span>(../img/btn.png);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.user</span> {</span><br><span class="line"> <span class="attribute">float</span>: right;</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">42px</span>;</span><br><span class="line"> <span class="attribute">margin-right</span>: <span class="number">30px</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">14px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#666</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.banner</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">421px</span>;</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="number">#1c036c</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.banner</span> <span class="selector-class">.w</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">421px</span>;</span><br><span class="line"> <span class="attribute">background</span>: <span class="built_in">url</span>(../img/banner2_20190819_210028.png) no-repeat top center;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.subnav</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">190px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">421px</span>;</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="built_in">rgba</span>(<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, .<span class="number">2</span>);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.subnav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="comment">/* width: 190px; */</span></span><br><span class="line"> <span class="attribute">height</span>: <span class="number">45px</span>;</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">45px</span>;</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">0</span> <span class="number">20px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.subnav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">14px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#fff</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.subnav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span><span class="selector-pseudo">:hover</span> {</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#00A4FF</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.subnav</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span> <span class="selector-tag">span</span> {</span><br><span class="line"> <span class="attribute">float</span>: right;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> {</span><br><span class="line"> <span class="attribute">float</span>: right;</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">230px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">300px</span>;</span><br><span class="line"> <span class="attribute">margin-top</span>: <span class="number">50px</span>;</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="number">#fff</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> <span class="selector-tag">h2</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">48px</span>;</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="number">#9bceea</span>;</span><br><span class="line"> <span class="attribute">text-align</span>: center;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">18px</span>;</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">48px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#fff</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> <span class="selector-class">.bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">14px</span> <span class="number">0</span>;</span><br><span class="line"> <span class="attribute">border-bottom</span>: <span class="number">1px</span> solid <span class="number">#ccc</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> <span class="selector-class">.bd</span> {</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">0</span> <span class="number">20px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> <span class="selector-class">.bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">h4</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">14px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#4e4e4e</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> <span class="selector-class">.bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">p</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">12px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#a5a5a5</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.course</span> <span class="selector-class">.bd</span> <span class="selector-class">.more</span> {</span><br><span class="line"> <span class="attribute">display</span>: block;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">38px</span>;</span><br><span class="line"> <span class="attribute">margin-top</span>: <span class="number">5px</span>;</span><br><span class="line"> <span class="attribute">border</span>: <span class="number">1px</span> solid <span class="number">#00a4ff</span>;</span><br><span class="line"> <span class="attribute">text-align</span>: center;</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">38px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#00a4ff</span>;</span><br><span class="line"> <span class="attribute">font-weight</span>: <span class="number">900</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.goods</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">60px</span>;</span><br><span class="line"> <span class="attribute">margin-top</span>: <span class="number">10px</span>;</span><br><span class="line"> <span class="attribute">background-color</span>: <span class="number">#fff</span>;</span><br><span class="line"> <span class="attribute">box-shadow</span>: <span class="number">0</span> <span class="number">2px</span> <span class="number">3px</span> <span class="number">3px</span> <span class="built_in">rgba</span>(<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, .<span class="number">1</span>);</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">60px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.goods</span> <span class="selector-tag">h3</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">margin-left</span>: <span class="number">30px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#00A4FF</span>;</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">60px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.goods</span> <span class="selector-tag">ul</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">margin-left</span>: <span class="number">30px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.goods</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.goods</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span> {</span><br><span class="line"> <span class="attribute">line-height</span>: <span class="number">60px</span>;</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">0</span> <span class="number">30px</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">16px</span>;</span><br><span class="line"> <span class="attribute">color</span>: black;</span><br><span class="line"> <span class="attribute">border-left</span>: <span class="number">1px</span> solid <span class="number">#ccc</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.goods</span> <span class="selector-class">.mod</span> {</span><br><span class="line"> <span class="attribute">float</span>: right;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#00A4FF</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">14px</span>;</span><br><span class="line"> <span class="attribute">margin-right</span>: <span class="number">30px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">615px</span>;</span><br><span class="line"> <span class="attribute">margin-top</span>: <span class="number">30px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-hd</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">45px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-hd</span> <span class="selector-tag">h3</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">20px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#494949</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-hd</span> <span class="selector-tag">a</span> {</span><br><span class="line"> <span class="attribute">float</span>: right;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">12px</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#a5a5a5</span>;</span><br><span class="line"> <span class="attribute">margin-top</span>: <span class="number">10px</span>;</span><br><span class="line"> <span class="attribute">margin-right</span>: <span class="number">30px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-bd</span> {</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">570px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">float</span>: left;</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">227px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">270px</span>;</span><br><span class="line"> <span class="attribute">margin-right</span>: <span class="number">15px</span>;</span><br><span class="line"> <span class="attribute">margin-bottom</span>: <span class="number">15px</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">h4</span> {</span><br><span class="line"> <span class="attribute">margin</span>: <span class="number">20px</span> <span class="number">20px</span> <span class="number">20px</span> <span class="number">25px</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">14px</span>;</span><br><span class="line"> <span class="attribute">font-weight</span>: <span class="number">400</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-class">.info</span> {</span><br><span class="line"> <span class="attribute">margin</span>: <span class="number">0</span> <span class="number">20px</span> <span class="number">0</span> <span class="number">25px</span>;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">12px</span>;</span><br><span class="line"> <span class="attribute">font-weight</span>: <span class="number">400</span>;</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#999999</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.box-bd</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-class">.info</span> <span class="selector-tag">span</span> {</span><br><span class="line"> <span class="attribute">color</span>: <span class="number">#ff7c2d</span>;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.clearfix</span><span class="selector-pseudo">:after</span>,</span><br><span class="line"><span class="selector-class">.clearfix</span><span class="selector-pseudo">:before</span> {</span><br><span class="line"> <span class="attribute">content</span>: <span class="string">""</span>;</span><br><span class="line"> <span class="attribute">display</span>: table;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.clearfix</span><span class="selector-pseudo">:after</span> {</span><br><span class="line"> <span class="attribute">clear</span>: both;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-class">.clearfix</span> {</span><br><span class="line"> *zoom: 1;</span><br><span class="line"> <span class="selector-tag">width</span>: 1225<span class="selector-tag">px</span>;</span><br><span class="line">}</span><br></pre></td></tr></table></figure>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E6%A1%88%E4%BE%8B/">案例</category>
<category domain="https://evrstr.cc/tags/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/%E6%A1%88%E4%BE%8B/">案例</category>
<comments>https://evrstr.cc/posts/67a6.html#disqus_thread</comments>
</item>
<item>
<title>笔记-011-浮动(float)</title>
<link>https://evrstr.cc/posts/3408.html</link>
<guid>https://evrstr.cc/posts/3408.html</guid>
<pubDate>Tue, 10 Nov 2020 11:27:30 GMT</pubDate>
<description><h1 id="清除浮动"><a href="#清除浮动" class="headerlink"</description>
<content:encoded><![CDATA[<h1 id="清除浮动"><a href="#清除浮动" class="headerlink" title="清除浮动"></a>清除浮动</h1><p>为什么?</p><ol><li>父级没高度</li><li>子盒子浮动了</li><li>影响了下面的布局</li></ol><h2 id="清除浮动的方式(4种)"><a href="#清除浮动的方式(4种)" class="headerlink" title="清除浮动的方式(4种)"></a>清除浮动的方式(4种)</h2><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201111111712.png"></p><ol><li><p>额外标签法(在最后一个浮动标签后,新加一个标签,给其设置clear:both;)(不推荐)</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">http-equiv</span>=<span class="string">"X-UA-Compatible"</span> <span class="attr">content</span>=<span class="string">"ie=edge"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"><span class="css"> <span class="selector-class">.fahter</span>{</span></span><br><span class="line"> width: 400px;</span><br><span class="line"> border: 1px solid deeppink;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.big</span>{</span></span><br><span class="line"> width: 200px;</span><br><span class="line"> height: 200px;</span><br><span class="line"> background: darkorange;</span><br><span class="line"> float: left;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.small</span>{</span></span><br><span class="line"> width: 120px;</span><br><span class="line"> height: 120px;</span><br><span class="line"> background: darkmagenta;</span><br><span class="line"> float: left;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.footer</span>{</span></span><br><span class="line"> width: 900px;</span><br><span class="line"> height: 100px;</span><br><span class="line"> background: darkslateblue;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.clear</span>{</span></span><br><span class="line"><span class="css"> <span class="selector-tag">clear</span><span class="selector-pseudo">:both</span>;</span></span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"fahter"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"big"</span>></span>big<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"small"</span>></span>small<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"clear"</span>></span>额外标签法<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"footer"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201111111942.png"></p></li><li><p>父级添加overflow属性(父元素添加overflow:hidden)(不推荐)通过触发BFC方式,实现清除浮动。</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="selector-class">.fahter</span>{</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">400px</span>;</span><br><span class="line"> <span class="attribute">border</span>: <span class="number">1px</span> solid deeppink;</span><br><span class="line"> <span class="attribute">overflow</span>: hidden;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><p>优点:代码简洁<br>缺点:内容增多的时候容易造成不会自动换行导致内容被隐藏掉,无法显示要溢出的元素<br>不推荐使用</p></li><li><p>使用after伪元素清除浮动(推荐使用)</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">style</span>></span></span><br><span class="line"><span class="css"> <span class="selector-class">.clearfix</span><span class="selector-pseudo">:after</span>{<span class="comment">/*伪元素是行内元素 正常浏览器清除浮动方法*/</span></span></span><br><span class="line"> content: "";</span><br><span class="line"> display: block;</span><br><span class="line"> height: 0;</span><br><span class="line"><span class="css"> <span class="selector-tag">clear</span><span class="selector-pseudo">:both</span>;</span></span><br><span class="line"> visibility: hidden;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.clearfix</span>{</span></span><br><span class="line"><span class="css"> *<span class="selector-tag">zoom</span>: 1;<span class="comment">/*ie6清除浮动的方式 *号只有IE6-IE7执行,其他浏览器不执行*/</span></span></span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"fahter clearfix"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"big"</span>></span>big<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"small"</span>></span>small<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!--<div class="clear">额外标签法</div>--></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"footer"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br></pre></td></tr></table></figure></li></ol><p>优点:符合闭合浮动思想,结构语义化正确<br>缺点:ie6-7不支持伪元素:after,使用zoom:1触发hasLayout.<br>推荐使用</p><ol start="4"><li>使用before和after双伪元素清除浮动<figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">style</span>></span></span><br><span class="line"></span><br><span class="line"><span class="css"> <span class="selector-class">.clearfix</span><span class="selector-pseudo">:after</span>,<span class="selector-class">.clearfix</span><span class="selector-pseudo">:before</span>{</span></span><br><span class="line"> content: "";</span><br><span class="line"> display: table;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.clearfix</span><span class="selector-pseudo">:after</span>{</span></span><br><span class="line"> clear: both;</span><br><span class="line"> }</span><br><span class="line"><span class="css"> <span class="selector-class">.clearfix</span>{</span></span><br><span class="line"> *zoom: 1;</span><br><span class="line"> }</span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"fahter clearfix"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"big"</span>></span>big<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"small"</span>></span>small<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="comment"><!--<div class="clear">额外标签法</div>--></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"footer"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br></pre></td></tr></table></figure>优点:代码更简洁<br>缺点:用zoom:1触发hasLayout(为了兼容ie6).<br>推荐使用</li></ol>]]></content:encoded>
<category domain="https://evrstr.cc/categories/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/float/">float</category>
<comments>https://evrstr.cc/posts/3408.html#disqus_thread</comments>
</item>
<item>
<title>笔记-010-CSS盒子模型</title>
<link>https://evrstr.cc/posts/d9f8.html</link>
<guid>https://evrstr.cc/posts/d9f8.html</guid>
<pubDate>Sun, 08 Nov 2020 04:28:28 GMT</pubDate>
<description><h1 id="盒子模型"><a href="#盒子模型" class="headerlink" title="盒子模型"></a>盒子模型</h1><p>页面布局要学习三大核心,盒子模型、浮动、定位。</p>
<h2 id="网页布局的本质"><a</description>
<content:encoded><![CDATA[<h1 id="盒子模型"><a href="#盒子模型" class="headerlink" title="盒子模型"></a>盒子模型</h1><p>页面布局要学习三大核心,盒子模型、浮动、定位。</p><h2 id="网页布局的本质"><a href="#网页布局的本质" class="headerlink" title="网页布局的本质"></a>网页布局的本质</h2><p>网页布局过程:</p><ol><li>先准备好相关的网页元素,网页元素基本都是盒子BOX。</li><li>利用CSS设置好盒子样式,然后摆放到相应位置。</li><li>往盒子里装内容。<br>网页布局的核心本质:利用CSS摆盒子。</li></ol><h1 id="盒子模型(BOX-Model)组成"><a href="#盒子模型(BOX-Model)组成" class="headerlink" title="盒子模型(BOX Model)组成"></a>盒子模型(BOX Model)组成</h1><p>所谓盒子模型:就是把HTML页面中的布局元素看作是一个矩形的盒子,也就是一个装内容的容器。<br>CSS盒子模型本质是一个盒子,封装周围的HTML元素,它包括:边框、外边距、内边距、实际内容。<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201108130140.png"></p><h2 id="边框(border)"><a href="#边框(border)" class="headerlink" title="边框(border)"></a>边框(border)</h2><p> border-width, border-style, border-color。<br> <figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="comment">/* 用法一:明确指定宽度值 */</span></span><br><span class="line"><span class="comment">/* 当给定一个宽度时,该宽度作用于选定元素的所有边框 */</span></span><br><span class="line"><span class="selector-tag">border-width</span>: 5<span class="selector-tag">px</span>;</span><br><span class="line"><span class="comment">/* 当给定两个宽度时,该宽度分别依次作用于选定元素的横边与纵边 */</span></span><br><span class="line"><span class="selector-tag">border-width</span>: 2<span class="selector-tag">px</span> 1<span class="selector-class">.5em</span>;</span><br><span class="line"><span class="comment">/* 当给定三个宽度时,该宽度分别依次作用于选定元素的上横边、纵边、下横边 */</span></span><br><span class="line"><span class="selector-tag">border-width</span>: 1<span class="selector-tag">px</span> 2<span class="selector-tag">em</span> 1<span class="selector-class">.5cm</span>;</span><br><span class="line"><span class="comment">/* 当给定四个宽度时,该宽度分别依次作用于选定元素的上横边、右纵边、下横边、左纵边 (即按顺时针依次作用) */</span></span><br><span class="line"><span class="selector-tag">border-width</span>: 1<span class="selector-tag">px</span> 2<span class="selector-tag">em</span> 0 4<span class="selector-tag">rem</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 用法二:使用全局关键字 */</span></span><br><span class="line"><span class="comment">/* 可以使用的全局关键字有:inherit(继承),initial(初始值),unset(不设置) */</span></span><br><span class="line"><span class="selector-tag">border-width</span>: <span class="selector-tag">inherit</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 用法三:使用作用于 border-width 的关键字 */</span></span><br><span class="line"><span class="selector-tag">border-width</span>: <span class="selector-tag">thin</span>;</span><br><span class="line"><span class="selector-tag">border-width</span>: <span class="selector-tag">medium</span>;</span><br><span class="line"><span class="selector-tag">border-width</span>: <span class="selector-tag">thick</span>;</span><br></pre></td></tr></table></figure></p> <figure class="highlight css"><table><tr><td class="code"><pre><span class="line"> <span class="comment">/* Apply to all four sides */</span></span><br><span class="line"><span class="selector-tag">border-style</span>: <span class="selector-tag">dashed</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* horizontal | vertical */</span></span><br><span class="line"><span class="selector-tag">border-style</span>: <span class="selector-tag">dotted</span> <span class="selector-tag">solid</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* top | horizontal | bottom */</span></span><br><span class="line"><span class="selector-tag">border-style</span>: <span class="selector-tag">hidden</span> <span class="selector-tag">double</span> <span class="selector-tag">dashed</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* top | right | bottom | left */</span></span><br><span class="line"><span class="selector-tag">border-style</span>: <span class="selector-tag">none</span> <span class="selector-tag">solid</span> <span class="selector-tag">dotted</span> <span class="selector-tag">dashed</span>; </span><br><span class="line"></span><br><span class="line"><span class="comment">/* Global values */</span></span><br><span class="line"><span class="selector-tag">border-style</span>: <span class="selector-tag">inherit</span>;</span><br><span class="line"><span class="selector-tag">border-style</span>: <span class="selector-tag">initial</span>;</span><br></pre></td></tr></table></figure><h3 id="边框的复合写法"><a href="#边框的复合写法" class="headerlink" title="边框的复合写法"></a>边框的复合写法</h3> <figure class="highlight css"><table><tr><td class="code"><pre><span class="line"> <span class="comment">/* 没有先后顺序 */</span></span><br><span class="line"><span class="selector-tag">border</span>: 1<span class="selector-tag">px</span> <span class="selector-tag">solid</span> <span class="selector-tag">black</span>; </span><br></pre></td></tr></table></figure><h3 id="表格的细线边框"><a href="#表格的细线边框" class="headerlink" title="表格的细线边框"></a>表格的细线边框</h3> <figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="comment">/* Keyword values */</span></span><br><span class="line"><span class="comment">/* 相邻的单元格共用同一条边框 */</span></span><br><span class="line"><span class="selector-tag">border-collapse</span>: <span class="selector-tag">collapse</span>;</span><br><span class="line"><span class="comment">/* 默认值。每个单元格拥有独立的边框(采用 separated-border 表格渲染模型)。 */</span></span><br><span class="line"><span class="selector-tag">border-collapse</span>: <span class="selector-tag">separate</span>;</span><br></pre></td></tr></table></figure><h3 id="注意点"><a href="#注意点" class="headerlink" title="注意点"></a>注意点</h3><p><strong>边框会影响盒子的实际大小。</strong></p><h2 id="内边距(padding)"><a href="#内边距(padding)" class="headerlink" title="内边距(padding)"></a>内边距(padding)</h2><p>语法:</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="comment">/* 应用于四个边 */</span></span><br><span class="line"><span class="selector-tag">padding</span>: 1<span class="selector-tag">em</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 垂直方向| 水平方向*/</span></span><br><span class="line"><span class="selector-tag">padding</span>: 5% 10%;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 顶部| 水平方向| 底部*/</span></span><br><span class="line"><span class="selector-tag">padding</span>: 1<span class="selector-tag">em</span> 2<span class="selector-tag">em</span> 2<span class="selector-tag">em</span>; </span><br><span class="line"></span><br><span class="line"><span class="comment">/* 顶部| 右边| 底部| 左边*/</span></span><br><span class="line"><span class="selector-tag">padding</span>: 2<span class="selector-tag">px</span> 1<span class="selector-tag">em</span> 0 1<span class="selector-tag">em</span>;</span><br></pre></td></tr></table></figure><h3 id="注意点-1"><a href="#注意点-1" class="headerlink" title="注意点"></a>注意点</h3><p><strong>内边距会影响盒子的实际大小。</strong><br><strong>如果盒子没有指定宽高,padding则不会影响盒子大小</strong></p><h3 id="padding-案例"><a href="#padding-案例" class="headerlink" title="padding 案例"></a>padding 案例</h3><p>新浪导航栏</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"><span class="css"> <span class="selector-class">.nav</span> {</span></span><br><span class="line"> height: 41px;</span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#4c4c4c</span>;</span></span><br><span class="line"> border-top: 3px;</span><br><span class="line"><span class="css"> <span class="selector-tag">border-top-color</span>: <span class="selector-id">#ff8500</span>;</span></span><br><span class="line"> border-top-style: solid;</span><br><span class="line"> border-bottom: 1px;</span><br><span class="line"><span class="css"> <span class="selector-tag">border-bottom-color</span>: <span class="selector-id">#edeef0</span>;</span></span><br><span class="line"> border-bottom-style: solid;</span><br><span class="line"> line-height: 41px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.nav</span> <span class="selector-tag">a</span> {</span></span><br><span class="line"> font-size: 12px;</span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#4c4c4c</span>;</span></span><br><span class="line"> text-decoration: none;</span><br><span class="line"> display: inline-block;</span><br><span class="line"> padding: 0px 20px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.nav</span> <span class="selector-tag">a</span><span class="selector-pseudo">:hover</span> {</span></span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#eee</span>;</span></span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#ff8500</span>;</span></span><br><span class="line"> border-bottom-style: solid;</span><br><span class="line"><span class="css"> <span class="selector-tag">border-bottom-color</span>: <span class="selector-id">#3a8f57</span>;</span></span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"nav"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>新浪导航<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>手机移动网<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>微博<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>实验室<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">""</span>></span>关于<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201109195851.png"></p><h2 id="外边距(margin)"><a href="#外边距(margin)" class="headerlink" title="外边距(margin)"></a>外边距(margin)</h2><p>用法:</p><blockquote><p>形式语法: [ <length> | <percentage> | auto ]{1,4}</p></blockquote><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="selector-tag">margin</span>: <span class="selector-tag">style</span> <span class="comment">/*单值语法 所有边缘 */</span> 举例: <span class="selector-tag">margin</span>: 1<span class="selector-tag">em</span>; </span><br><span class="line"><span class="selector-tag">margin</span>: <span class="selector-tag">vertical</span> <span class="selector-tag">horizontal</span> <span class="comment">/*二值语法 纵向 横向 */</span> 举例: <span class="selector-tag">margin</span>: 5% <span class="selector-tag">auto</span>; </span><br><span class="line"><span class="selector-tag">margin</span>: <span class="selector-tag">top</span> <span class="selector-tag">horizontal</span> <span class="selector-tag">bottom</span> <span class="comment">/*三值语法 上 横向 下*/</span> 举例: <span class="selector-tag">margin</span>: 1<span class="selector-tag">em</span> <span class="selector-tag">auto</span> 2<span class="selector-tag">em</span>; </span><br><span class="line"><span class="selector-tag">margin</span>: <span class="selector-tag">top</span> <span class="selector-tag">right</span> <span class="selector-tag">bottom</span> <span class="selector-tag">left</span> <span class="comment">/*四值语法 上 右 下 左*/</span> 举例: <span class="selector-tag">margin</span>: 2<span class="selector-tag">px</span> 1<span class="selector-tag">em</span> 0 <span class="selector-tag">auto</span>; </span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="外边距典型应用"><a href="#外边距典型应用" class="headerlink" title="外边距典型应用"></a>外边距典型应用</h3><p>外边距可以让块级盒子水平居中,但是必须满足两个条件:</p><ol><li>盒子必须指定了宽度。</li><li>盒子的左右外边距设置为auto。</li></ol><blockquote><p>margin: 0 auto<br>注意:上述居中写法是让块级元素水平居中,行内元素或行内块元素水平居中是通过给父级元素添加<code>text-align:center</code>即可。</p></blockquote><h3 id="外边距合并"><a href="#外边距合并" class="headerlink" title="外边距合并"></a>外边距合并</h3><p>使用<code>margin</code>定义块元素的垂直外边距时,可能会出现外边距的合并。</p><h2 id="嵌套块元素垂直外边距的塌陷"><a href="#嵌套块元素垂直外边距的塌陷" class="headerlink" title="嵌套块元素垂直外边距的塌陷"></a>嵌套块元素垂直外边距的塌陷</h2><p>对于两个嵌套关系的块元素,父元素有上外边距,同时子元素也有上外边距,此时父元素会塌陷较大的外边距值。<br>解决方案:</p><ol><li>可以为父元素定义上边框</li><li>可以为父元素定义内上边距</li><li>可以为父元素添加 <code>overflow: hidden;</code></li><li>还有其他方法,比如浮动,固定,绝对值定位的盒子不会出现塌陷问题。 </li></ol><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201109211611.png"></p><h2 id="清楚内外边距"><a href="#清楚内外边距" class="headerlink" title="清楚内外边距"></a>清楚内外边距</h2><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="comment">/* CSS的第一行代码 */</span></span><br><span class="line">* {</span><br><span class="line"> <span class="attribute">margin</span>: <span class="number">0</span>;</span><br><span class="line"> <span class="attribute">padding</span>: <span class="number">0</span>;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><p><strong>注意:</strong>为了兼顾兼容性,行内元素一般只设置左右内外边距。但是转换为块元素或行内块元素就可以设置。</p><h1 id="综合案例"><a href="#综合案例" class="headerlink" title="综合案例"></a>综合案例</h1><p>产品卡片</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"> body {</span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#F5F5F5</span>;</span></span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.card</span> {</span></span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#FFFFFF</span>;</span></span><br><span class="line"> display: inline-block;</span><br><span class="line"> width: 234px;</span><br><span class="line"> height: 260px;</span><br><span class="line"> text-align: center;</span><br><span class="line"> padding: 20px 0;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.card</span> <span class="selector-tag">img</span> {</span></span><br><span class="line"> width: 160px;</span><br><span class="line"> height: 160px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.item</span> {</span></span><br><span class="line"> font-weight: 400;</span><br><span class="line"> font-size: 14px;</span><br><span class="line"> margin: 0 10px 2px 10px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.des</span> {</span></span><br><span class="line"> display: inline-block;</span><br><span class="line"> font-size: 12px;</span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#b0b0b0</span>;</span></span><br><span class="line"> margin: 0 10px 10px 10px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.price</span> {</span></span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#ff6700</span>;</span></span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"card"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"mi10.webp"</span> <span class="attr">alt</span>=<span class="string">""</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h3</span> <span class="attr">class</span>=<span class="string">"item"</span>></span>小米10 至尊版<span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">p</span> <span class="attr">class</span>=<span class="string">"des"</span>></span>120X 变焦/120W秒充/120Hz屏幕<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">p</span> <span class="attr">class</span>=<span class="string">"price"</span>></span>5299元起<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201109213222.png"></p><p>案例二:</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"zh-CN"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"><span class="tag"><<span class="name">style</span>></span></span><br><span class="line"> * {</span><br><span class="line"> margin: 0;</span><br><span class="line"> padding: 0;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.card</span> {</span></span><br><span class="line"> width: 248px;</span><br><span class="line"> height: 163px;</span><br><span class="line"><span class="css"> <span class="comment">/* display: inline-block; */</span></span></span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#fff</span>;</span></span><br><span class="line"> margin: 100px auto;</span><br><span class="line"><span class="css"> <span class="selector-tag">border</span>: 1<span class="selector-tag">px</span> <span class="selector-tag">solid</span> <span class="selector-id">#ccc</span>;</span></span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.title</span> {</span></span><br><span class="line"> height: 32px;</span><br><span class="line"> line-height: 32px;</span><br><span class="line"> padding: 0 12px 0 12px;</span><br><span class="line"><span class="css"> <span class="selector-tag">border</span>: 1<span class="selector-tag">px</span> <span class="selector-tag">dotted</span> <span class="selector-id">#ccc</span>;</span></span><br><span class="line"> padding-left: 15px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.title_text</span> {</span></span><br><span class="line"> font-weight: 400;</span><br><span class="line"> font-size: 14px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.info</span> {</span></span><br><span class="line"> padding-top: 7px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.info</span> <span class="selector-tag">li</span> {</span></span><br><span class="line"> list-style: none;</span><br><span class="line"> font-size: 12px;</span><br><span class="line"> line-height: 23px;</span><br><span class="line"> padding-left: 20px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.info</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span> {</span></span><br><span class="line"> text-decoration: none;</span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#666</span>;</span></span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.info</span> <span class="selector-tag">ul</span> <span class="selector-tag">li</span> <span class="selector-tag">a</span><span class="selector-pseudo">:hover</span> {</span></span><br><span class="line"> text-decoration: underline;</span><br><span class="line"> }</span><br><span class="line"><span class="tag"></<span class="name">style</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"card"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"title"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h4</span> <span class="attr">class</span>=<span class="string">"title_text"</span>></span>品优购快报<span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"info"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span><span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>【特惠】 爆款耳机5折秒<span class="tag"></<span class="name">a</span>></span><span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span><span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#1"</span>></span>【特惠】 母亲节,健康好礼低至5折<span class="tag"></<span class="name">a</span>></span><span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span><span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#2"</span>></span>【特惠】 爆款耳机5折秒<span class="tag"></<span class="name">a</span>></span><span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span><span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#4"</span>></span>【特惠】 9.9元洗100张照片<span class="tag"></<span class="name">a</span>></span><span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span><span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#4"</span>></span>【特惠】 爆款耳机5折秒<span class="tag"></<span class="name">a</span>></span><span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">div</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201109221725.png"></p><h1 id="圆角边框"><a href="#圆角边框" class="headerlink" title="圆角边框"></a>圆角边框</h1><figure class="highlight css"><table><tr><td class="code"><pre><span class="line">border-radius: 1em/5em;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 等价于: */</span></span><br><span class="line"></span><br><span class="line"><span class="selector-tag">border-top-left-radius</span>: 1<span class="selector-tag">em</span> 5<span class="selector-tag">em</span>;</span><br><span class="line"><span class="selector-tag">border-top-right-radius</span>: 1<span class="selector-tag">em</span> 5<span class="selector-tag">em</span>;</span><br><span class="line"><span class="selector-tag">border-bottom-right-radius</span>: 1<span class="selector-tag">em</span> 5<span class="selector-tag">em</span>;</span><br><span class="line"><span class="selector-tag">border-bottom-left-radius</span>: 1<span class="selector-tag">em</span> 5<span class="selector-tag">em</span>;</span><br></pre></td></tr></table></figure><figure class="highlight css"><table><tr><td class="code"><pre><span class="line">border-radius: 4px 3px 6px / 2px 4px;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* 等价于: */</span></span><br><span class="line"></span><br><span class="line"><span class="selector-tag">border-top-left-radius</span>: 4<span class="selector-tag">px</span> 2<span class="selector-tag">px</span>;</span><br><span class="line"><span class="selector-tag">border-top-right-radius</span>: 3<span class="selector-tag">px</span> 4<span class="selector-tag">px</span>;</span><br><span class="line"><span class="selector-tag">border-bottom-right-radius</span>: 6<span class="selector-tag">px</span> 2<span class="selector-tag">px</span>;</span><br><span class="line"><span class="selector-tag">border-bottom-left-radius</span>: 3<span class="selector-tag">px</span> 4<span class="selector-tag">px</span>;</span><br></pre></td></tr></table></figure><h1 id="文字阴影"><a href="#文字阴影" class="headerlink" title="文字阴影"></a>文字阴影</h1><p>语法</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="comment">/* offset-x | offset-y | blur-radius | color */</span></span><br><span class="line"><span class="selector-tag">text-shadow</span>: 1<span class="selector-tag">px</span> 1<span class="selector-tag">px</span> 2<span class="selector-tag">px</span> <span class="selector-tag">black</span>; </span><br><span class="line"></span><br><span class="line"><span class="comment">/* color | offset-x | offset-y | blur-radius */</span></span><br><span class="line"><span class="selector-tag">text-shadow</span>: <span class="selector-id">#fc0</span> 1<span class="selector-tag">px</span> 0 10<span class="selector-tag">px</span>; </span><br><span class="line"></span><br><span class="line"><span class="comment">/* offset-x | offset-y | color */</span></span><br><span class="line"><span class="selector-tag">text-shadow</span>: 5<span class="selector-tag">px</span> 5<span class="selector-tag">px</span> <span class="selector-id">#558abb</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* color | offset-x | offset-y */</span></span><br><span class="line"><span class="selector-tag">text-shadow</span>: <span class="selector-tag">white</span> 2<span class="selector-tag">px</span> 5<span class="selector-tag">px</span>;</span><br><span class="line"></span><br><span class="line"><span class="comment">/* offset-x | offset-y</span></span><br><span class="line"><span class="comment">/* Use defaults for color and blur-radius */</span></span><br><span class="line"><span class="selector-tag">text-shadow</span>: 5<span class="selector-tag">px</span> 10<span class="selector-tag">px</span>;</span><br></pre></td></tr></table></figure>]]></content:encoded>
<category domain="https://evrstr.cc/categories/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8B/">盒子模型</category>
<comments>https://evrstr.cc/posts/d9f8.html#disqus_thread</comments>
</item>
<item>
<title>笔记-009-CSS的三大特性</title>
<link>https://evrstr.cc/posts/bb80.html</link>
<guid>https://evrstr.cc/posts/bb80.html</guid>
<pubDate>Sun, 08 Nov 2020 03:01:41 GMT</pubDate>
<description><h1 id="CSS的三大特性"><a href="#CSS的三大特性" class="headerlink" title="CSS的三大特性"></a>CSS的三大特性</h1><p>CSS有三个非常重要的特性:<font</description>
<content:encoded><![CDATA[<h1 id="CSS的三大特性"><a href="#CSS的三大特性" class="headerlink" title="CSS的三大特性"></a>CSS的三大特性</h1><p>CSS有三个非常重要的特性:<font color=red>层叠性、继承性、优先级/font></p><h2 id="层叠性"><a href="#层叠性" class="headerlink" title="层叠性"></a>层叠性</h2><p>相同选择器给设置同样的样式时,此时就会出现一个样式覆盖另一个冲突的样式,层叠性主要解决样式冲突的问题。<br><strong>层叠性原则:</strong></p><ul><li>样式冲突,遵循的原则是就近原则,哪个样式离结构近,就执行哪个样式。</li><li>样式不冲突,不会层叠。</li></ul><h2 id="继承性"><a href="#继承性" class="headerlink" title="继承性"></a>继承性</h2><p>子标签会继承父标签的某些样式,如文本颜色和字号。简单理解就是子承父业。</p><ul><li>恰当的使用可以简化代码,降低CSS样式的复杂性。</li><li>子元素可以继承父元素的样式(text-, font-, line-这些元素开头的可以继承,以及color属性)</li></ul><h3 id="行高的继承"><a href="#行高的继承" class="headerlink" title="行高的继承"></a>行高的继承</h3><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"> body {</span><br><span class="line"> font: 24px/1.5 "Microsoft YaHei";</span><br><span class="line"> color: pink;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"> div {</span><br><span class="line"> font-size: 30px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"> p {</span><br><span class="line"> font-size: 18px;</span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span>></span> 我的div<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">p</span>></span>我的P<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><p>此时div的行高为30<em>1.5=45px, p的行高为18</em>1.5=27px。</p><h2 id="优先级"><a href="#优先级" class="headerlink" title="优先级"></a>优先级</h2><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201108121100.png"></p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="selector-tag">div</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">30px</span><span class="meta">!important</span>;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><h3 id="权重叠加"><a href="#权重叠加" class="headerlink" title="权重叠加"></a>权重叠加</h3><p>如果是复合选择器,则会有权重叠加,需要计算权重。</p><ul><li>div ul li —–>0, 0, 0, 3</li><li>.nav ul li —–>0, 0, 1, 2</li><li>a:hover —–>0, 0, 1, 1</li><li>.nav a —–>0, 0, 1, 1</li></ul>]]></content:encoded>
<category domain="https://evrstr.cc/categories/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/%E7%89%B9%E6%80%A7/">特性</category>
<comments>https://evrstr.cc/posts/bb80.html#disqus_thread</comments>
</item>
<item>
<title>笔记-008-CSS的背景</title>
<link>https://evrstr.cc/posts/6682.html</link>
<guid>https://evrstr.cc/posts/6682.html</guid>
<pubDate>Sat, 07 Nov 2020 12:29:20 GMT</pubDate>
<description><h1 id="CSS的背景"><a href="#CSS的背景" class="headerlink"</description>
<content:encoded><![CDATA[<h1 id="CSS的背景"><a href="#CSS的背景" class="headerlink" title="CSS的背景"></a>CSS的背景</h1><p>背景属性可以设置:<strong>背景颜色、背景图片、背景平铺、背景图片位置、背景图像固定</strong>等。</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"en"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>Document<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"><span class="css"> <span class="selector-class">.div1</span> {</span></span><br><span class="line"> width: 400px;</span><br><span class="line"> height: 260px;</span><br><span class="line"> display: inline-block;</span><br><span class="line"> background-color: pink;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.div2</span> {</span></span><br><span class="line"> width: 400px;</span><br><span class="line"> height: 260px;</span><br><span class="line"> display: inline-block;</span><br><span class="line"> background-image: url(../新建文件夹/re0.jpg);</span><br><span class="line"> background-repeat: repeat;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.div3</span> {</span></span><br><span class="line"> width: 400px;</span><br><span class="line"> height: 260px;</span><br><span class="line"> display: inline-block;</span><br><span class="line"> background-color: rgb(112, 105, 106);</span><br><span class="line"> background-image: url(../新建文件夹/re0.jpg);</span><br><span class="line"> background-repeat: no-repeat;</span><br><span class="line"><span class="css"> <span class="comment">/* background-position: left bottom; */</span></span></span><br><span class="line"><span class="css"> <span class="comment">/* background-position: 50px 80px; */</span></span></span><br><span class="line"><span class="css"> <span class="comment">/* background-position: 50% 50%; */</span></span></span><br><span class="line"> background-position: 2em 6em;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-class">.div4</span> {</span></span><br><span class="line"> width: 1920px;</span><br><span class="line"> height: 1080px;</span><br><span class="line"> background-color: rgb(112, 105, 106);</span><br><span class="line"> background-image: url(../新建文件夹/1.jpg);</span><br><span class="line"> background-repeat: no-repeat;</span><br><span class="line"> background-attachment: fixed;</span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"div1"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"div2"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"div3"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">div</span> <span class="attr">class</span>=<span class="string">"div4"</span>></span><span class="tag"></<span class="name">div</span>></span></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure>]]></content:encoded>
<category domain="https://evrstr.cc/categories/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/%E8%83%8C%E6%99%AF/">背景</category>
<comments>https://evrstr.cc/posts/6682.html#disqus_thread</comments>
</item>
<item>
<title>笔记-007-CSS元素显示模式</title>
<link>https://evrstr.cc/posts/a178.html</link>
<guid>https://evrstr.cc/posts/a178.html</guid>
<pubDate>Fri, 06 Nov 2020 08:26:28 GMT</pubDate>
<description><h1 id="元素显示模式简介"><a href="#元素显示模式简介" class="headerlink"</description>
<content:encoded><![CDATA[<h1 id="元素显示模式简介"><a href="#元素显示模式简介" class="headerlink" title="元素显示模式简介"></a>元素显示模式简介</h1><p>指元素(标签)以什么方式进行显示,比如<code><div></code>自己占一行,比如一行可以放多个<code><span></code>。<br>HTML元素一般分为<font color="red">块元素</font>和<font color="red">行内元素</font>。</p><h1 id="块元素"><a href="#块元素" class="headerlink" title="块元素"></a>块元素</h1><p>常见的块元素有: h1~h6, p, div, ul, ol, li 等,<code><div></code>是最典型的块元素。<br>块级元素特点:</p><ol><li>自己独占一行。</li><li>高度、宽度、外边距及内边距都可以控制。</li><li>宽度默认是容器(父元素)的100%。</li><li>是一个容器及盒子,里面可以放<font color="red">行内元素</font>和<font color="red">块级元素</font></li></ol><h1 id="行内元素"><a href="#行内元素" class="headerlink" title="行内元素"></a>行内元素</h1><p>常见的行内元素有: a, strrong, b, em, i, del, s, ins, u, span等,<code><span></code>是最典型的行内元素,也称<strong>内联元素</strong><br>行内元素的特点:</p><ol><li>相邻行内元素在一行上,一行可以显示多个。</li><li>高、宽直接设置无效。</li><li>默认宽度就是它本身内容的宽度。</li><li>行内元素只能容纳文本或其他行内元素。</li></ol><p><strong>注意</strong>:</p><ul><li>链接里面不能再放链接。</li><li>特殊情况链接<code><a></code>里面可以放块级元素,但是给<code><a></code>转换成块级显示模式最安全。</li></ul><h1 id="行内块元素"><a href="#行内块元素" class="headerlink" title="行内块元素"></a>行内块元素</h1><p>行内元素有几个特殊的标签<code><img /></code>、<code><input /></code>、<code><dt></code>,<font color=red>它们同时具有块元素和行内元素的特点</font>。</p><p>行内块元素特点:</p><ol><li>和相邻行内元素或行内块元素在一行上,但是它们之间会有空白间隙。一行可以显示多个(行内元素特点)。</li><li>默认宽度就是它本身内容的宽度(行内元素特点)。</li><li>高度、行高、外边距以及内边距都可以控制(块级元素特点)。</li></ol><h1 id="显示模式的转换"><a href="#显示模式的转换" class="headerlink" title="显示模式的转换"></a>显示模式的转换</h1><ul><li>转换为块元素:display: block;</li><li>转换为行内元素:display: inline;</li><li>转换为块元素:display: inline-block;</li></ul><h1 id="案例:侧边栏"><a href="#案例:侧边栏" class="headerlink" title="案例:侧边栏"></a>案例:侧边栏</h1><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"zh-CN"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"utf-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>侧边栏案例<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"><<span class="name">style</span>></span></span><br><span class="line"> a {</span><br><span class="line"> display: block;</span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#535758</span>;</span></span><br><span class="line"> width: 230px;</span><br><span class="line"> height: 40px;</span><br><span class="line"> font-size: 14px;</span><br><span class="line"><span class="css"> <span class="selector-tag">color</span>: <span class="selector-id">#fff</span>;</span></span><br><span class="line"> text-decoration: none;</span><br><span class="line"> text-indent: 2em;</span><br><span class="line"> line-height: 40px;</span><br><span class="line"> }</span><br><span class="line"> </span><br><span class="line"><span class="css"> <span class="selector-tag">a</span><span class="selector-pseudo">:hover</span> {</span></span><br><span class="line"><span class="css"> <span class="selector-tag">background-color</span>: <span class="selector-id">#FF6F00</span>;</span></span><br><span class="line"> }</span><br><span class="line"> <span class="tag"></<span class="name">style</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>手机 电话卡<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>电视 盒子<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>笔记本 平板<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>出行 穿戴<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>智能 路由器<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>健康 儿童<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"#"</span>></span>耳机 音响<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><p>显示效果:<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201107202555.png"></p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/%E6%98%BE%E7%A4%BA%E6%A8%A1%E5%BC%8F/">显示模式</category>
<comments>https://evrstr.cc/posts/a178.html#disqus_thread</comments>
</item>
<item>
<title>一键安装脚本为CentOS 7 添加Swap交换分区</title>
<link>https://evrstr.cc/posts/34b.html</link>
<guid>https://evrstr.cc/posts/34b.html</guid>
<pubDate>Wed, 04 Nov 2020 03:19:20 GMT</pubDate>
<description><h1 id="方法一:"><a href="#方法一:" class="headerlink" title="方法一:"></a>方法一:</h1><p>输入</p>
<figure class="highlight shell"><table><tr><td</description>
<content:encoded><![CDATA[<h1 id="方法一:"><a href="#方法一:" class="headerlink" title="方法一:"></a>方法一:</h1><p>输入</p><figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">wget https://cdn.jsdelivr.net/gh/evrstr/shell@latest/swap.sh && chmod +x swap.sh && bash swap.sh</span><br></pre></td></tr></table></figure><p>然后回车,根据提示设置swap。<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201108142326.png"></p><hr><h1 id="方法二:"><a href="#方法二:" class="headerlink" title="方法二:"></a>方法二:</h1><h2 id="1-新建脚本swap-sh"><a href="#1-新建脚本swap-sh" class="headerlink" title="1.新建脚本swap.sh"></a>1.新建脚本<code>swap.sh</code></h2><figure class="highlight shell"><table><tr><td class="code"><pre><span class="line"><span class="meta">#</span><span class="bash">!/usr/bin/env bash</span></span><br><span class="line"></span><br><span class="line">Green="\033[32m"</span><br><span class="line">Font="\033[0m"</span><br><span class="line">Red="\033[31m" </span><br><span class="line"></span><br><span class="line"><span class="meta">#</span><span class="bash">root权限</span></span><br><span class="line">root_need(){</span><br><span class="line"> if [[ $EUID -ne 0 ]]; then</span><br><span class="line"> echo -e "${Red}Error:This script must be run as root!${Font}"</span><br><span class="line"> exit 1</span><br><span class="line"> fi</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="meta">#</span><span class="bash">检测ovz</span></span><br><span class="line">ovz_no(){</span><br><span class="line"> if [[ -d "/proc/vz" ]]; then</span><br><span class="line"> echo -e "${Red}Your VPS is based on OpenVZ,not supported!${Font}"</span><br><span class="line"> exit 1</span><br><span class="line"> fi</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">add_swap(){</span><br><span class="line">echo -e "${Green}请输入需要添加的swap,建议为内存的2倍!${Font}"</span><br><span class="line">read -p "请输入swap数值:" swapsize</span><br><span class="line"></span><br><span class="line"><span class="meta">#</span><span class="bash">检查是否存在swapfile</span></span><br><span class="line">grep -q "swapfile" /etc/fstab</span><br><span class="line"></span><br><span class="line"><span class="meta">#</span><span class="bash">如果不存在将为其创建swap</span></span><br><span class="line">if [ $? -ne 0 ]; then</span><br><span class="line">echo -e "${Green}swapfile未发现,正在为其创建swapfile${Font}"</span><br><span class="line">fallocate -l ${swapsize}M /swapfile</span><br><span class="line">chmod 600 /swapfile</span><br><span class="line">mkswap /swapfile</span><br><span class="line">swapon /swapfile</span><br><span class="line">echo '/swapfile none swap defaults 0 0' >> /etc/fstab</span><br><span class="line"> echo -e "${Green}swap创建成功,并查看信息:${Font}"</span><br><span class="line"> cat /proc/swaps</span><br><span class="line"> cat /proc/meminfo | grep Swap</span><br><span class="line">else</span><br><span class="line">echo -e "${Red}swapfile已存在,swap设置失败,请先运行脚本删除swap后重新设置!${Font}"</span><br><span class="line">fi</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">del_swap(){</span><br><span class="line"><span class="meta">#</span><span class="bash">检查是否存在swapfile</span></span><br><span class="line">grep -q "swapfile" /etc/fstab</span><br><span class="line"></span><br><span class="line"><span class="meta">#</span><span class="bash">如果存在就将其移除</span></span><br><span class="line">if [ $? -eq 0 ]; then</span><br><span class="line">echo -e "${Green}swapfile已发现,正在将其移除...${Font}"</span><br><span class="line">sed -i '/swapfile/d' /etc/fstab</span><br><span class="line">echo "3" > /proc/sys/vm/drop_caches</span><br><span class="line">swapoff -a</span><br><span class="line">rm -f /swapfile</span><br><span class="line"> echo -e "${Green}swap已删除!${Font}"</span><br><span class="line">else</span><br><span class="line">echo -e "${Red}swapfile未发现,swap删除失败!${Font}"</span><br><span class="line">fi</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="meta">#</span><span class="bash">开始菜单</span></span><br><span class="line">main(){</span><br><span class="line">root_need</span><br><span class="line">ovz_no</span><br><span class="line">clear</span><br><span class="line">echo -e "———————————————————————————————————————"</span><br><span class="line">echo -e "${Green}一键添加/删除swap脚本${Font}"</span><br><span class="line">echo -e "${Green}1、添加swap${Font}"</span><br><span class="line">echo -e "${Green}2、删除swap${Font}"</span><br><span class="line">echo -e "———————————————————————————————————————"</span><br><span class="line">read -p "请输入数字 [1-2]:" num</span><br><span class="line">case "$num" in</span><br><span class="line"> 1)</span><br><span class="line"> add_swap</span><br><span class="line"> ;;</span><br><span class="line"> 2)</span><br><span class="line"> del_swap</span><br><span class="line"> ;;</span><br><span class="line"> *)</span><br><span class="line"> clear</span><br><span class="line"> echo -e "${Green}请输入正确数字 [1-2]${Font}"</span><br><span class="line"> sleep 2s</span><br><span class="line"> main</span><br><span class="line"> ;;</span><br><span class="line"> esac</span><br><span class="line">}</span><br><span class="line">main</span><br></pre></td></tr></table></figure><h2 id="2-输入chmod-x-swap-sh回车"><a href="#2-输入chmod-x-swap-sh回车" class="headerlink" title="2.输入chmod +x swap.sh回车"></a>2.输入<code>chmod +x swap.sh</code>回车</h2><h2 id="3-运行脚本:-swap-sh,根据提示进行操作即可"><a href="#3-运行脚本:-swap-sh,根据提示进行操作即可" class="headerlink" title="3.运行脚本:./swap.sh,根据提示进行操作即可"></a>3.运行脚本:<code>./swap.sh</code>,根据提示进行操作即可</h2><blockquote><p>注意:输入分区大小时,单位为M,如需4G,直接4000即可。</p></blockquote><blockquote><p>最后输入<code>free -m</code>检查是否添加成功。</p></blockquote>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E8%84%9A%E6%9C%AC/">脚本</category>
<category domain="https://evrstr.cc/categories/shell/">shell</category>
<category domain="https://evrstr.cc/tags/swap/">swap</category>
<category domain="https://evrstr.cc/tags/%E8%84%9A%E6%9C%AC/">脚本</category>
<category domain="https://evrstr.cc/tags/shell/">shell</category>
<category domain="https://evrstr.cc/tags/centos/">centos</category>
<comments>https://evrstr.cc/posts/34b.html#disqus_thread</comments>
</item>
<item>
<title>笔记-006-CSS基础选择器</title>
<link>https://evrstr.cc/posts/e4f5.html</link>
<guid>https://evrstr.cc/posts/e4f5.html</guid>
<pubDate>Tue, 03 Nov 2020 02:21:57 GMT</pubDate>
<description><h1 id="CSS基础选择器"><a href="#CSS基础选择器" class="headerlink" title="CSS基础选择器"></a>CSS基础选择器</h1><h2 id="标签选择器"><a href="#标签选择器"</description>
<content:encoded><![CDATA[<h1 id="CSS基础选择器"><a href="#CSS基础选择器" class="headerlink" title="CSS基础选择器"></a>CSS基础选择器</h1><h2 id="标签选择器"><a href="#标签选择器" class="headerlink" title="标签选择器"></a>标签选择器</h2><p>标签选择器是指用HTML标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的CSS样式。</p><figure class="highlight"><table><tr><td class="code"><pre><span class="line"><!<span class="selector-tag">DOCTYPE</span> <span class="selector-tag">html</span>></span><br><span class="line"><html lang="en"></span><br><span class="line"><<span class="selector-tag">head</span>></span><br><span class="line"> <meta charset="UTF-8"></span><br><span class="line"> <meta name="viewport" content="width=device-width, initial-scale=1.0"></span><br><span class="line"> <title>Document</title></span><br><span class="line"> <<span class="selector-tag">style</span>></span><br><span class="line"> <span class="comment">/* 选择器{样式} */</span></span><br><span class="line"> <span class="selector-tag">p</span> {</span><br><span class="line"> <span class="attribute">color</span>: brown;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">48px</span>;</span><br><span class="line"> }</span><br><span class="line"> <span class="selector-tag">div</span> {</span><br><span class="line"> <span class="attribute">color</span>: cornflowerblue;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">32px</span>;</span><br><span class="line"> }</span><br><span class="line"> </style></span><br><span class="line"></head></span><br><span class="line"><<span class="selector-tag">body</span>></span><br><span class="line"> <p>有点意思</p></span><br><span class="line"> <div>有点意思</div></span><br><span class="line"> </span><br><span class="line"></body></span><br><span class="line"></html></span><br></pre></td></tr></table></figure><h2 id="类选择器"><a href="#类选择器" class="headerlink" title="类选择器"></a>类选择器</h2><p> 使用<code>.</code>进行选择类。</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><!<span class="selector-tag">DOCTYPE</span> <span class="selector-tag">html</span>></span><br><span class="line"><html lang="en"></span><br><span class="line"><<span class="selector-tag">head</span>></span><br><span class="line"> <meta charset="UTF-8"></span><br><span class="line"> <meta name="viewport" content="width=device-width, initial-scale=1.0"></span><br><span class="line"> <title>Document</title></span><br><span class="line"> <<span class="selector-tag">style</span>></span><br><span class="line"> <span class="comment">/* 选择器{样式} */</span></span><br><span class="line"> <span class="selector-tag">p</span> {</span><br><span class="line"> <span class="attribute">color</span>: brown;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">48px</span>;</span><br><span class="line"> }</span><br><span class="line"> <span class="selector-tag">div</span> {</span><br><span class="line"> <span class="attribute">color</span>: cornflowerblue;</span><br><span class="line"></span><br><span class="line"> }</span><br><span class="line"> <span class="selector-class">.myName</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">32px</span>;</span><br><span class="line"> }</span><br><span class="line"> </style></span><br><span class="line"></head></span><br><span class="line"><<span class="selector-tag">body</span>></span><br><span class="line"> <p>有点意思</p></span><br><span class="line"> <div>有点意思</div></span><br><span class="line"> <div class="myName">有点意思</div></span><br><span class="line"></body></span><br><span class="line"></html></span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="多类名使用"><a href="#多类名使用" class="headerlink" title="多类名使用"></a>多类名使用</h3><p>可以设置一些公有的样式,减少代码量。</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><!<span class="selector-tag">DOCTYPE</span> <span class="selector-tag">html</span>></span><br><span class="line"><html lang="en"></span><br><span class="line"><<span class="selector-tag">head</span>></span><br><span class="line"> <meta charset="UTF-8"></span><br><span class="line"> <meta name="viewport" content="width=device-width, initial-scale=1.0"></span><br><span class="line"> <title>Document</title></span><br><span class="line"> <<span class="selector-tag">style</span>></span><br><span class="line"> <span class="comment">/* 选择器{样式} */</span></span><br><span class="line"> <span class="selector-class">.box</span> {</span><br><span class="line"> <span class="attribute">width</span>: <span class="number">150px</span>;</span><br><span class="line"> <span class="attribute">height</span>: <span class="number">100px</span>;</span><br><span class="line"> }</span><br><span class="line"> <span class="selector-class">.red</span> {</span><br><span class="line"></span><br><span class="line"> <span class="attribute">background-color</span>: red;</span><br><span class="line"> }</span><br><span class="line"> <span class="selector-class">.green</span> {</span><br><span class="line"></span><br><span class="line"> <span class="attribute">background-color</span>: green;</span><br><span class="line"> }</span><br><span class="line"> </style></span><br><span class="line"></head></span><br><span class="line"><<span class="selector-tag">body</span>></span><br><span class="line"> <div class="box red"></div></span><br><span class="line"> <div class="box green"></div></span><br><span class="line"> <div class="box red"></div></span><br><span class="line"></body></span><br><span class="line"></html></span><br><span class="line"></span><br></pre></td></tr></table></figure><h2 id="id选择器"><a href="#id选择器" class="headerlink" title="id选择器"></a>id选择器</h2><p>id是唯一的<br>语法</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="selector-id">#id</span>名字 {</span><br><span class="line"> ···</span><br><span class="line">}</span><br></pre></td></tr></table></figure><h2 id="通配符选择器"><a href="#通配符选择器" class="headerlink" title="通配符选择器"></a>通配符选择器</h2><p>使用<code>*</code>来定义,它表示选取页面中的所以元素(标签)<br>语法</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line">* {</span><br><span class="line"> 属性1: 属性值1;</span><br><span class="line"> ···</span><br><span class="line">}</span><br></pre></td></tr></table></figure><p><strong>特殊情况才使用。</strong></p><h1 id="字体-Font属性"><a href="#字体-Font属性" class="headerlink" title="字体 Font属性"></a>字体 Font属性</h1><figure class="highlight"><table><tr><td class="code"><pre><span class="line"><!<span class="selector-tag">DOCTYPE</span> <span class="selector-tag">html</span>></span><br><span class="line"><html lang="en"></span><br><span class="line"></span><br><span class="line"><<span class="selector-tag">head</span>></span><br><span class="line"> <meta charset="UTF-8"></span><br><span class="line"> <meta name="viewport" content="width=device-width, initial-scale=1.0"></span><br><span class="line"> <title>Document</title></span><br><span class="line"> <<span class="selector-tag">style</span>></span><br><span class="line"> <span class="selector-class">.bold</span> {</span><br><span class="line"> <span class="attribute">font-weight</span>: <span class="number">700</span>;</span><br><span class="line"> }</span><br><span class="line"></span><br><span class="line"> <span class="selector-class">.normal</span> {</span><br><span class="line"> <span class="attribute">font-weight</span>: normal;</span><br><span class="line"> <span class="attribute">font-family</span>: <span class="string">'Arial Narrow'</span>, Arial, sans-serif;</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">55px</span>;</span><br><span class="line"> <span class="attribute">font-style</span>: initial;</span><br><span class="line"> }</span><br><span class="line"></span><br><span class="line"> <span class="selector-class">.p1</span> {</span><br><span class="line"> <span class="comment">/*两种写法,但必须严格按照顺序。*/</span></span><br><span class="line"> <span class="comment">/* font-style: italic;</span></span><br><span class="line"><span class="comment"> font-weight: 700;</span></span><br><span class="line"><span class="comment"> font-size: 16px;</span></span><br><span class="line"><span class="comment"> font-family: 'Microsoft yahei'; */</span></span><br><span class="line"> <span class="attribute">font</span>: italic <span class="number">700</span> <span class="number">16px</span> <span class="string">'Microsoft yahei'</span>;</span><br><span class="line"> }</span><br><span class="line"> </style></span><br><span class="line"></head></span><br><span class="line"></span><br><span class="line"><<span class="selector-tag">body</span>></span><br><span class="line"></span><br><span class="line"> <h2 class="normal">我的世界</h2></span><br><span class="line"></span><br><span class="line"> <p class="p1">苦力怕</p></span><br><span class="line"> <p>僵尸村民</p></span><br><span class="line"> <p>凋零骷髅</p></span><br><span class="line"> <p class="bold">村民交易所</p></span><br><span class="line"></span><br><span class="line"></body></span><br><span class="line"></span><br><span class="line"></html></span><br></pre></td></tr></table></figure><ul><li>上例中,使用font属性时,必须严格按照顺序来写,不能更换顺序。</li><li>不需要设置的属性可以省略,但必须保留<code> font-size</code>和<code>font-family</code>,否则font属性不起作用。</li></ul><h2 id="字体属性总结"><a href="#字体属性总结" class="headerlink" title="字体属性总结"></a>字体属性总结</h2><table><thead><tr><th align="center">属性</th><th align="left">表示</th><th align="center">参数</th><th align="left">注意点</th></tr></thead><tbody><tr><td align="center">font-size</td><td align="left">字号</td><td align="center">absolute-size \ relative-size \ length</td><td align="left">通常是px,要带单位</td></tr><tr><td align="center">font-family</td><td align="left">字体</td><td align="center">name</td><td align="left">按照实际需求写字体</td></tr><tr><td align="center">font-weight</td><td align="left">字体粗细</td><td align="center">normal \ bold \ bolder \ lighter \ number(直接写数字)</td><td align="left">加粗700或bold,不加粗400或normal</td></tr><tr><td align="center">font-style</td><td align="left">字体样式</td><td align="center">normal \ italic \ oblique</td><td align="left">加粗、倾斜</td></tr><tr><td align="center">font</td><td align="left">字体连写</td><td align="center">复合参数</td><td align="left">连写有顺序,不能随意换位置,<code>font-size</code>和<code>font-family</code>是必须的。</td></tr></tbody></table><h1 id="Text-文本属性"><a href="#Text-文本属性" class="headerlink" title="Text 文本属性"></a>Text 文本属性</h1><table><thead><tr><th align="center">属性</th><th align="left">表示</th><th align="left">注意点</th></tr></thead><tbody><tr><td align="center">color</td><td align="left">文本颜色</td><td align="left">通常用16进制表示,比如#fff</td></tr><tr><td align="center">text-align</td><td align="left">文本对齐</td><td align="left">设定文字的水平对齐方式</td></tr><tr><td align="center">text-indent</td><td align="left">文本缩进</td><td align="left">通常用于段首缩进两个字的距离 text-indent: 2em;</td></tr><tr><td align="center">texy-decoration</td><td align="left">文本修饰</td><td align="left">添加下划线underline,取消下划线none</td></tr><tr><td align="center">line-height</td><td align="left">行高</td><td align="left">控制行与行之间的距离。</td></tr></tbody></table><h1 id="复合选择器"><a href="#复合选择器" class="headerlink" title="复合选择器"></a>复合选择器</h1><h2 id="后代选择器"><a href="#后代选择器" class="headerlink" title="后代选择器"></a>后代选择器</h2><p>后代选择器又称包含选择器。<br>语法</p><figure class="highlight"><table><tr><td class="code"><pre><span class="line">元素1 元素2 { 样式声明; }</span><br><span class="line">.类名 元素 { 样式声明; }</span><br></pre></td></tr></table></figure><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="selector-tag">ul</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">24px</span>;</span><br><span class="line">}</span><br><span class="line"><span class="selector-class">.nav</span> <span class="selector-tag">li</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">32px</span>;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><p>元素一 元素二可以是任意的基础选择器。</p><h2 id="子选择器"><a href="#子选择器" class="headerlink" title="子选择器"></a>子选择器</h2><p>元素1是父级, 元素2是子级。<br>元素二必须是亲儿子,孙子不在选择范围内。</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line">元素1 >元素2 { 样式声明; }</span><br><span class="line"><span class="selector-class">.nav</span>><span class="selector-tag">a</span> {</span><br><span class="line"> <span class="attribute">font-size</span>: <span class="number">32px</span>;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><h2 id="并集选择器"><a href="#并集选择器" class="headerlink" title="并集选择器"></a>并集选择器</h2><p>语法:</p><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="selector-tag">div</span>, <span class="selector-tag">p</span>, <span class="selector-tag">ul</span> <span class="selector-tag">li</span>, <span class="selector-class">.nav</span> <span class="selector-tag">li</span>{</span><br><span class="line"> ···</span><br><span class="line">}</span><br></pre></td></tr></table></figure><h2 id="伪类选择器"><a href="#伪类选择器" class="headerlink" title="伪类选择器"></a>伪类选择器</h2><figure class="highlight css"><table><tr><td class="code"><pre><span class="line"><span class="comment">/*css链接伪类选择器 a:link 选择所以未被访问的链接 a:visited */</span></span><br><span class="line"><span class="comment">/* 选择所以已访问的链接 a:hover 选择鼠标指针位于其上的链接 */</span></span><br><span class="line"><span class="comment">/* a:active 选择鼠标按下但未弹起的链接 */</span></span><br><span class="line"><span class="selector-tag">a</span><span class="selector-pseudo">:link</span> {</span><br><span class="line"> <span class="attribute">color</span>: pink;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-tag">a</span><span class="selector-pseudo">:visited</span> {</span><br><span class="line"> <span class="attribute">color</span>: <span class="built_in">rgb</span>(<span class="number">2</span>, <span class="number">2</span>, <span class="number">2</span>);</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-tag">a</span><span class="selector-pseudo">:hover</span> {</span><br><span class="line"> <span class="attribute">color</span>: green;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line"><span class="selector-tag">a</span><span class="selector-pseudo">:active</span> {</span><br><span class="line"> <span class="attribute">color</span>: saddlebrown;</span><br><span class="line">}</span><br></pre></td></tr></table></figure><p>顺序为:lvha</p><h2 id="focus伪类选择器"><a href="#focus伪类选择器" class="headerlink" title=":focus伪类选择器"></a>:focus伪类选择器</h2><p>一般<code>input</code>表单类元素才能选取</p><figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">```CSS</span><br><span class="line"> input:focus {</span><br><span class="line"> background-color: seagreen;</span><br><span class="line"> }</span><br></pre></td></tr></table></figure><h2 id="复合选择器总结"><a href="#复合选择器总结" class="headerlink" title="复合选择器总结"></a>复合选择器总结</h2><table><thead><tr><th align="center">选择器</th><th align="left">作用</th><th align="left">特征</th><th align="left">使用情况</th><th align="left">用法</th></tr></thead><tbody><tr><td align="center">后代选择器</td><td align="left">选取后代元素</td><td align="left">可以是子孙后代</td><td align="left">较多</td><td align="left">.nav a</td></tr><tr><td align="center">子代选择器</td><td align="left">选取最近一级的元素</td><td align="left">只能是亲儿子</td><td align="left">较少</td><td align="left">.nav>p</td></tr><tr><td align="center">并集选择器</td><td align="left">选取某些相同样式的元素</td><td align="left">可以用于集体声明</td><td align="left">较多</td><td align="left">,nav, p ,#dd</td></tr><tr><td align="center">链接伪类选择器</td><td align="left">选择不同状态的链接</td><td align="left">和链接相关</td><td align="left">较多</td><td align="left">a:hover</td></tr><tr><td align="center">:focus选择器</td><td align="left">选择获得光标的表单</td><td align="left">和表单相关</td><td align="left">较少</td><td align="left">input:focus</td></tr></tbody></table>]]></content:encoded>
<category domain="https://evrstr.cc/categories/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS/">CSS</category>
<category domain="https://evrstr.cc/tags/CSS%E9%80%89%E6%8B%A9%E5%99%A8/">CSS选择器</category>
<comments>https://evrstr.cc/posts/e4f5.html#disqus_thread</comments>
</item>
<item>
<title>笔记-005-综合案例</title>
<link>https://evrstr.cc/posts/4da2.html</link>
<guid>https://evrstr.cc/posts/4da2.html</guid>
<pubDate>Mon, 02 Nov 2020 07:15:20 GMT</pubDate>
<description><h1 id="综合案例"><a href="#综合案例" class="headerlink" title="综合案例"></a>综合案例</h1><p><img src=</description>
<content:encoded><![CDATA[<h1 id="综合案例"><a href="#综合案例" class="headerlink" title="综合案例"></a>综合案例</h1><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201102151324.png"></p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="meta"><!DOCTYPE <span class="meta-keyword">html</span>></span></span><br><span class="line"><span class="tag"><<span class="name">html</span> <span class="attr">lang</span>=<span class="string">"zh-CN"</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">head</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">charset</span>=<span class="string">"UTF-8"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">meta</span> <span class="attr">name</span>=<span class="string">"viewport"</span> <span class="attr">content</span>=<span class="string">"width=device-width, initial-scale=1.0"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">title</span>></span>综合案例一<span class="tag"></<span class="name">title</span>></span></span><br><span class="line"><span class="tag"></<span class="name">head</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">body</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h3</span>></span>青春不常在,抓紧谈恋爱<span class="tag"></<span class="name">h1</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">form</span> <span class="attr">action</span>=<span class="string">"xxx.php"</span> <span class="attr">method</span>=<span class="string">"GET"</span>></span></span><br><span class="line"> 性别</span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">value</span>=<span class="string">"男"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">id</span>=<span class="string">"sex_m"</span>></span><span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"sex_m"</span>></span>♂ 男<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">value</span>=<span class="string">"女"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">id</span>=<span class="string">"sex_f"</span>></span><span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"sex_f"</span>></span>♀ 女<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> 生日</span><br><span class="line"> <span class="tag"><<span class="name">select</span> <span class="attr">name</span>=<span class="string">"年"</span> <span class="attr">id</span>=<span class="string">"year"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2020"</span>></span>--请选择年--<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2020"</span>></span>2020<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2019"</span>></span>2019<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2018"</span>></span>2018<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2017"</span>></span>2017<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">select</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">select</span> <span class="attr">name</span>=<span class="string">"月"</span> <span class="attr">id</span>=<span class="string">"year"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2020"</span>></span>--请选择月--<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2020"</span>></span>2020<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2019"</span>></span>2019<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2018"</span>></span>2018<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2017"</span>></span>2017<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">select</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">select</span> <span class="attr">name</span>=<span class="string">"日"</span> <span class="attr">id</span>=<span class="string">"year"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2020"</span>></span>--请选择日--<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2020"</span>></span>2020<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2019"</span>></span>2019<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2018"</span>></span>2018<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2017"</span>></span>2017<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"></span><br><span class="line"> <span class="tag"></<span class="name">select</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"diqu"</span>></span>所在地区<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"text"</span> <span class="attr">id</span>=<span class="string">"diqu"</span> <span class="attr">value</span>=<span class="string">"北京思密达"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> 婚姻状况</span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">value</span>=<span class="string">"未婚"</span> <span class="attr">name</span>=<span class="string">"hy"</span> <span class="attr">id</span>=<span class="string">"hy_n"</span> <span class="attr">checked</span>=<span class="string">"checked"</span>></span><span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"hy_n"</span>></span>未婚<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">value</span>=<span class="string">"已婚"</span> <span class="attr">name</span>=<span class="string">"hy"</span> <span class="attr">id</span>=<span class="string">"hy_y"</span>></span><span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"hy_y"</span>></span>已婚<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">value</span>=<span class="string">"离婚"</span> <span class="attr">name</span>=<span class="string">"hy"</span> <span class="attr">id</span>=<span class="string">"hy_x"</span>></span><span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"hy_x"</span>></span>已婚<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"xueli"</span>></span>学历<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"text"</span> <span class="attr">id</span>=<span class="string">"xueli"</span> <span class="attr">value</span>=<span class="string">"幼儿园"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> 喜欢的类型</span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">value</span>=<span class="string">"妩媚的"</span> <span class="attr">id</span>=<span class="string">"wm"</span>></span> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"wm"</span>></span>妩媚的<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">value</span>=<span class="string">"可爱的"</span> <span class="attr">id</span>=<span class="string">"ka"</span>></span> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"ka"</span>></span>可爱的<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">value</span>=<span class="string">"小鲜肉"</span> <span class="attr">id</span>=<span class="string">"xxr"</span>></span> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"xxr"</span>></span>小鲜肉<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">value</span>=<span class="string">"老腊肉"</span> <span class="attr">id</span>=<span class="string">"llr"</span>></span> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"llr"</span>></span>老腊肉<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">value</span>=<span class="string">"都喜欢"</span> <span class="attr">id</span>=<span class="string">"dxh"</span>></span> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"dxh"</span>></span>都喜欢<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"js"</span>></span>自我介绍<span class="tag"></<span class="name">label</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">textarea</span> <span class="attr">name</span>=<span class="string">"zwjs"</span> <span class="attr">id</span>=<span class="string">"js"</span> <span class="attr">cols</span>=<span class="string">"30"</span> <span class="attr">rows</span>=<span class="string">"2"</span>></span><span class="tag"></<span class="name">textarea</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"submit"</span> <span class="attr">value</span>=<span class="string">"免费注册"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span>></span>同意协议!</span><br><span class="line"> <span class="tag"><<span class="name">br</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">form</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"http://baidu.com"</span>></span>我是会员,立即登录<span class="tag"></<span class="name">a</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">h2</span>></span>我承诺<span class="tag"></<span class="name">h2</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>年满18岁、单身<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>抱着严肃的态度<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>真诚寻找另一半<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">ul</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">body</span>></span></span><br><span class="line"></span><br><span class="line"><span class="tag"></<span class="name">html</span>></span></span><br></pre></td></tr></table></figure><h1 id="效果"><a href="#效果" class="headerlink" title="效果"></a>效果</h1><h3>青春不常在,抓紧谈恋爱</h1> <form action="xxx.php" method="GET"> 性别 <input type="radio" value="男" name="sex" id="sex_m"><label for="sex_m">♂ 男</label> <input type="radio" value="女" name="sex" id="sex_f"><label for="sex_f">♀ 女</label> <br> 生日 <select name="年" id="year"> <option value="2020">--请选择年--</option> <option value="2020">2020</option> <option value="2019">2019</option> <option value="2018">2018</option> <option value="2017">2017</option> </select> <select name="月" id="year"> <option value="2020">--请选择月--</option> <option value="2020">2020</option> <option value="2019">2019</option> <option value="2018">2018</option> <option value="2017">2017</option> </select> <select name="日" id="year"> <option value="2020">--请选择日--</option> <option value="2020">2020</option> <option value="2019">2019</option> <option value="2018">2018</option> <option value="2017">2017</option> </select> <br> <label for="diqu">所在地区</label> <input type="text" id="diqu" value="北京思密达"> <br> 婚姻状况 <input type="radio" value="未婚" name="hy" id="hy_n" checked="checked"><label for="hy_n">未婚</label> <input type="radio" value="已婚" name="hy" id="hy_y"><label for="hy_y">已婚</label> <input type="radio" value="离婚" name="hy" id="hy_x"><label for="hy_x">已婚</label> <br> <label for="xueli">学历</label> <input type="text" id="xueli" value="幼儿园"> <br> 喜欢的类型 <input type="checkbox" value="妩媚的" id="wm"> <label for="wm">妩媚的</label> <input type="checkbox" value="可爱的" id="ka"> <label for="ka">可爱的</label> <input type="checkbox" value="小鲜肉" id="xxr"> <label for="xxr">小鲜肉</label> <input type="checkbox" value="老腊肉" id="llr"> <label for="llr">老腊肉</label> <input type="checkbox" value="都喜欢" id="dxh"> <label for="dxh">都喜欢</label> <br> <label for="js">自我介绍</label> <textarea name="zwjs" id="js" cols="30" rows="2"></textarea> <br> <input type="submit" value="免费注册"> <br> <input type="radio">同意协议! <br> </form> <a href="http://baidu.com">我是会员,立即登录</a> <h2>我承诺</h2> <ul> <li>年满18岁、单身</li> <li>抱着严肃的态度</li> <li>真诚寻找另一半</li> </ul>]]></content:encoded>
<category domain="https://evrstr.cc/categories/HTML/">HTML</category>
<category domain="https://evrstr.cc/categories/%E6%A1%88%E4%BE%8B/">案例</category>
<category domain="https://evrstr.cc/tags/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/%E6%A1%88%E4%BE%8B/">案例</category>
<comments>https://evrstr.cc/posts/4da2.html#disqus_thread</comments>
</item>
<item>
<title>笔记-004-常用基本标签-下</title>
<link>https://evrstr.cc/posts/6258.html</link>
<guid>https://evrstr.cc/posts/6258.html</guid>
<pubDate>Sun, 01 Nov 2020 09:39:28 GMT</pubDate>
<description><h1 id="表格标签"><a href="#表格标签" class="headerlink" title="表格标签"></a>表格标签</h1><h2 id="表格的基本语法"><a href="#表格的基本语法" class="headerlink"</description>
<content:encoded><![CDATA[<h1 id="表格标签"><a href="#表格标签" class="headerlink" title="表格标签"></a>表格标签</h1><h2 id="表格的基本语法"><a href="#表格的基本语法" class="headerlink" title="表格的基本语法"></a>表格的基本语法</h2><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">table</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">thead</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">th</span>></span>表头1<span class="tag"></<span class="name">th</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">th</span>></span>表头2<span class="tag"></<span class="name">th</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">thead</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tbody</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>单元格内的文字1<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>单元格内的文字2<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>单元格内的文字3<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>单元格内的文字4<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tbody</span>></span></span><br><span class="line"><span class="tag"></<span class="name">table</span>></span></span><br></pre></td></tr></table></figure><table> <thead> <tr> <th>表头1</th> <th>表头2</th> </tr> </thead> <tbody> <tr> <td>单元格内的文字1</td> <td>单元格内的文字2</td> </tr> <tr> <td>单元格内的文字3</td> <td>单元格内的文字4</td> </tr> </tbody></table><ol><li><code><table></code>是用于定义表格的标签</li><li><code><tr></code>用于定义表格中的行,必须嵌套在<code><table></code>标签里</li><li><code><th></code>用于定义表格中的表头,必须嵌套在<code><table></code>标签里</li><li><code><td></code>用于定义表格中的单元格,必须嵌套在<code><tr></code>标签里</li><li>td指表格数据(table data),即单元格内容</li><li>表格结构标签<code><theade></thead></code>和<code><tbofy></tbofy></code>。</li></ol><h2 id="表格属性"><a href="#表格属性" class="headerlink" title="表格属性"></a>表格属性</h2><p>一般是通过CSS设置</p><table><thead><tr><th align="center">属性名</th><th align="left">属性值</th><th align="left">说明</th></tr></thead><tbody><tr><td align="center">align</td><td align="left">left、center、right</td><td align="left">表格相对周围元素的对齐方式。</td></tr><tr><td align="center">border</td><td align="left">1 或 “”</td><td align="left">规定表格是否有边框</td></tr><tr><td align="center">cellpadding</td><td align="left">像素值</td><td align="left">规定单元边沿与其内容之间的空白,默认像素1。</td></tr><tr><td align="center">cellspacing</td><td align="left">像素值</td><td align="left">规定单元格之间的空白,默认2像素。</td></tr><tr><td align="center">width</td><td align="left">像素值或百分比</td><td align="left">规定表格宽度。</td></tr></tbody></table><p>注意要写到table里</p><h2 id="合并单元格"><a href="#合并单元格" class="headerlink" title="合并单元格"></a>合并单元格</h2><h3 id="合并单元格的方式"><a href="#合并单元格的方式" class="headerlink" title="合并单元格的方式"></a>合并单元格的方式</h3><ul><li>跨行合并:rowspan=”合并单元的个数”</li><li>跨列合并 colspan-=”合并单元的个数”<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202020-11-02%20094211.png"></li></ul><h3 id="目标单元格(写合并代码的地方)"><a href="#目标单元格(写合并代码的地方)" class="headerlink" title="目标单元格(写合并代码的地方)"></a>目标单元格(写合并代码的地方)</h3><ul><li>跨行:最上侧单元格为目标单元格,写合并代码。</li><li>跨列:最左侧单元格为目标单元格,写合并单吗。</li></ul><h3 id="合并单元格步骤"><a href="#合并单元格步骤" class="headerlink" title="合并单元格步骤"></a>合并单元格步骤</h3><ol><li>确定跨行还是跨列。</li><li>找到目标单元格,写上合并代码,例如:<code><td colspan="2">合并列</td></code>和<code><td rowspan="2">合并行</td></code></li><li>删除多余单元格</li></ol><h3 id="合并单元格例子"><a href="#合并单元格例子" class="headerlink" title="合并单元格例子"></a><strong>合并单元格例子</strong></h3><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">table</span> <span class="attr">align</span>=<span class="string">"center"</span> <span class="attr">border</span>=<span class="string">"1"</span> <span class="attr">cellspacing</span>=<span class="string">"0"</span> <span class="attr">width</span>=<span class="string">"500"</span> <span class="attr">height</span>=<span class="string">"350"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">thead</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">th</span> <span class="attr">colspan</span>=<span class="string">"4="</span>></span> 表头 <span class="tag"></<span class="name">th</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">thead</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tbody</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>1<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>2<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>3<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span> <span class="attr">rowspan</span>=<span class="string">"2"</span>></span>4<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>5<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span> <span class="attr">colspan</span>=<span class="string">"2"</span> <span class="attr">rowspan</span>=<span class="string">"2"</span>></span>6<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>9<span class="tag"></<span class="name">td</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">td</span>></span>12<span class="tag"></<span class="name">td</span>></span> </span><br><span class="line"> <span class="tag"></<span class="name">tr</span>></span></span><br><span class="line"> <span class="tag"></<span class="name">tbody</span>></span></span><br><span class="line"><span class="tag"></<span class="name">table</span>></span></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201102101043.png"></p><hr><h1 id="列表标签"><a href="#列表标签" class="headerlink" title="列表标签"></a>列表标签</h1><h2 id="无序列表"><a href="#无序列表" class="headerlink" title="无序列表"></a>无序列表</h2><p>基本语法格式:</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">ul</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>列表项1<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>列表项2<span class="tag"></<span class="name">li</span>></span> </span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>列表项3<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"><span class="tag"></<span class="name">ul</span>></span></span><br></pre></td></tr></table></figure><ul> <li>列表项1</li> <li>列表项2</li> <li>列表项3</li></ul><ol><li>无序列表各列表项没有顺序级别之分,是并列的</li><li><code><ul></ul></code>中只能嵌套<code><li></li></code>标签。</li><li><code><li></li></code>直接相当于一个容器,可以容纳所以元素。</li></ol><h2 id="有序列表"><a href="#有序列表" class="headerlink" title="有序列表"></a>有序列表</h2><p>基本语法格式:</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">ol</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>列表项1<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>列表项2<span class="tag"></<span class="name">li</span>></span> </span><br><span class="line"> <span class="tag"><<span class="name">li</span>></span>列表项3<span class="tag"></<span class="name">li</span>></span></span><br><span class="line"><span class="tag"></<span class="name">ol</span>></span></span><br></pre></td></tr></table></figure><ol> <li>列表项1</li> <li>列表项2</li> <li>列表项3</li></ol><ol><li>有序列表各列表项没有顺序级别之分,是并列的</li><li><code><ol></ol></code>中只能嵌套<code><li></li></code>标签。</li><li><code><li></li></code>直接相当于一个容器,可以容纳所以元素。</li></ol><h2 id="自定义列表"><a href="#自定义列表" class="headerlink" title="自定义列表"></a>自定义列表</h2><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">dl</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">dt</span>></span>列表项1<span class="tag"></<span class="name">dt</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">dd</span>></span>列表项2<span class="tag"></<span class="name">dd</span>></span> </span><br><span class="line"> <span class="tag"><<span class="name">dd</span>></span>列表项3<span class="tag"></<span class="name">dd</span>></span></span><br><span class="line"><span class="tag"></<span class="name">dl</span>></span></span><br></pre></td></tr></table></figure><dl> <dt>列表项1</dt> <dd>列表项2</dd> <dd>列表项3</dd></dl><ol><li><code><dl></dl></code>中只能嵌套<code><dt></dt> <dd></dd></code>标签。</li><li><code><dt></dt> <dd></dd></code>直接相当于一个容器,可以容纳所以元素。</li><li><code><dt></dt> <dd></dd></code>没有个数限制,经常是一个<code><dt></dt></code>对应多个<code><dd></dd></code></li><li><code><dt></dt> <dd></dd></code>直接相当于一个容器,可以容纳所以元素。</li></ol><hr><h1 id="表单标签"><a href="#表单标签" class="headerlink" title="表单标签"></a>表单标签</h1><p>在HTML中,一个完整的表单有三部分组成</p><ol><li><strong>表单域</strong></li><li><strong>表单控件</strong></li><li><strong>提示信息</strong><br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201102104126.png"></li></ol><h2 id="表单域"><a href="#表单域" class="headerlink" title="表单域"></a>表单域</h2><p>标签:<code><form></form></code>用于定义表单域,会把它范围内的表单元素信息提交给服务器。</p><p>基本语法:</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">form</span> <span class="attr">action</span>=<span class="string">"URL地址"</span> <span class="attr">method</span>=<span class="string">"提交方式"</span> <span class="attr">name</span>=<span class="string">"表单域名称"</span>></span></span><br><span class="line"> 各种表单元素控件···</span><br><span class="line"><span class="tag"></<span class="name">form</span>></span></span><br></pre></td></tr></table></figure><h3 id="lt-input-gt-表单元素"><a href="#lt-input-gt-表单元素" class="headerlink" title="<input> 表单元素"></a><code><input></code> 表单元素</h3><p><font color=red><strong>type</strong></font>属性的属性值及其描述</p><table><thead><tr><th align="center">属性值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="center">button</td><td align="left">定义可点击按钮(多数情况下用js启动脚本)。</td></tr><tr><td align="center">checkbox</td><td align="left">定义复选框</td></tr><tr><td align="center">file</td><td align="left">定义输入字段和“浏览”按钮,供文件上传。</td></tr><tr><td align="center">hidden</td><td align="left">定义隐藏的输入字段。</td></tr><tr><td align="center">image</td><td align="left">定义图像形式的提交按钮。</td></tr><tr><td align="center">password</td><td align="left">定义密码字段,该字段中的字符被掩码。</td></tr><tr><td align="center">radio</td><td align="left">定义单选框</td></tr><tr><td align="center">reset</td><td align="left">定义重置按钮,重置按钮会把表单中的数据清除。</td></tr><tr><td align="center">submit</td><td align="left">定义提交按钮,把表单数据发送给服务器。</td></tr><tr><td align="center">text</td><td align="left">定义单行的输入字段,用户可在其中输入文本,默认宽度为20字符。</td></tr></tbody></table><p>除了type属性外,<code><input></code>标签还有很多其他属性,常用属性如下:</p><table><thead><tr><th align="center">属性</th><th align="left">属性值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="center">name</td><td align="left">由用户定义</td><td align="left">定义input元素的名称</td></tr><tr><td align="center">value</td><td align="left">由用户定义</td><td align="left">规定input元素的值</td></tr><tr><td align="center">checked</td><td align="left">checked</td><td align="left">规定input首次加载时应当被选中</td></tr><tr><td align="center">maxlength</td><td align="left">正整数</td><td align="left">规定输入字段的字符的最大长度</td></tr></tbody></table><ol><li>name和value是每个表单元素都有的属性,主要给后台人员使用。</li><li><strong>name</strong>表单元素的名字,要求<font color=red>单选按钮或复选框有同样的值。</font></li><li>checked用于单选框和复选框。</li></ol><p>举例:</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">form</span> <span class="attr">action</span>=<span class="string">"test.php"</span> <span class="attr">method</span>=<span class="string">"GET"</span>></span></span><br><span class="line"> <span class="comment"><!-- text文本框,提示用户输入 --></span></span><br><span class="line"> 用户名: <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"text"</span> <span class="attr">placeholder</span>=<span class="string">"邮箱/手机号码"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> 密码: <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"password"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="comment"><!-- radio单选框,要求相同的name值 --></span></span><br><span class="line"> 男: <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">value</span>=<span class="string">"男"</span>></span> 女: <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">value</span>=<span class="string">"女"</span>></span> 人妖: <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">value</span>=<span class="string">"人妖"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="comment"><!-- checkbox复选框,要求相同的name值 --></span></span><br><span class="line"> 吃饭:<span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">name</span>=<span class="string">"dsm"</span> <span class="attr">value</span>=<span class="string">"吃饭"</span> <span class="attr">checked</span>=<span class="string">"checked"</span>></span> 睡觉:<span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">name</span>=<span class="string">"dsm"</span> <span class="attr">value</span>=<span class="string">"睡觉"</span>></span> 打豆豆:<span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"checkbox"</span> <span class="attr">name</span>=<span class="string">"dsm"</span> <span class="attr">value</span>=<span class="string">"打豆豆"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span> </span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"button"</span> <span class="attr">value</span>=<span class="string">"button1"</span>></span> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"button"</span> <span class="attr">value</span>=<span class="string">"button2"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"file"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"hidden"</span> <span class="attr">value</span>=<span class="string">"1"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"image"</span> <span class="attr">src</span>=<span class="string">"https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2258327546,1216840282&fm=26&gp=0.jpg"</span> <span class="attr">width</span>=<span class="string">"32"</span> <span class="attr">height</span>=<span class="string">"32"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"reset"</span> <span class="attr">value</span>=<span class="string">"清空"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"submit"</span> <span class="attr">value</span>=<span class="string">"提交"</span>></span></span><br><span class="line"><span class="tag"></<span class="name">form</span>></span></span><br></pre></td></tr></table></figure><form action="test.php" method="GET"> <!-- text文本框,提示用户输入 --> 用户名: <input type="text" placeholder="邮箱/手机号码"> <br /> 密码: <input type="password"> <br /> <!-- radio单选框,要求相同的name值 --> 男: <input type="radio" name="sex" value="男"> 女: <input type="radio" name="sex" value="女"> 人妖: <input type="radio" name="sex" value="人妖"> <br /> <!-- checkbox复选框,要求相同的name值 --> 吃饭:<input type="checkbox" name="dsm" value="吃饭" checked="checked"> 睡觉:<input type="checkbox" name="dsm" value="睡觉"> 打豆豆:<input type="checkbox" name="dsm" value="打豆豆"> <br /> <input type="button" value="button1"> <input type="button" value="button2"> <br /> <input type="file"> <br /> <input type="hidden" value="1"> <br /> <input type="image" src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2258327546,1216840282&fm=26&gp=0.jpg" width="32" height="32"> <br /> <input type="reset" value="清空"> <br /> <input type="submit" value="提交"></form><h3 id="lt-label-gt-表单元素"><a href="#lt-label-gt-表单元素" class="headerlink" title="<label>表单元素"></a><code><label></code>表单元素</h3><ul><li><label>标签为input元素定义标注(标签)</li><li><label>标签用于绑定一个表单元素,当点击<label>标签的文字时,浏览器会自动将焦点转到选择对应的表单元素上,增加用户体验。</li></ul><p>核心:<code><label></code>标签的<code>for</code>属性和元素的<code>id</code>属性值相同。</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="comment"><!-- 不用label标签 --></span></span><br><span class="line"><span class="tag"><<span class="name">form</span> <span class="attr">action</span>=<span class="string">"test.php"</span> <span class="attr">method</span>=<span class="string">"GET"</span>></span></span><br><span class="line"> 男: <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">value</span>=<span class="string">"男"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">br</span> /></span></span><br><span class="line"> <span class="comment"><!-- 使用label标签 --></span></span><br><span class="line"> <span class="tag"><<span class="name">label</span> <span class="attr">for</span>=<span class="string">"sex_womean"</span>></span>女<span class="tag"></<span class="name">label</span>></span> <span class="tag"><<span class="name">input</span> <span class="attr">type</span>=<span class="string">"radio"</span> <span class="attr">name</span>=<span class="string">"sex"</span> <span class="attr">value</span>=<span class="string">"女"</span> <span class="attr">id</span>=<span class="string">"sex_womean"</span>></span></span><br><span class="line"><span class="tag"></<span class="name">form</span>></span></span><br><span class="line"></span><br></pre></td></tr></table></figure><form action="test.php" method="GET"> <!-- 不用label标签 --> 男: <input type="radio" name="sex" value="男"> <br /> <!-- 使用label标签 --> <label for="sex_womean">女</label> <input type="radio" name="sex" value="女" id="sex_womean"></form><h3 id="lt-select-gt-表单元素"><a href="#lt-select-gt-表单元素" class="headerlink" title="<select>表单元素"></a><code><select></code>表单元素</h3><p>下拉列表</p><ul><li><code><select></code>至少包含一个<code><option></code></li><li><code><option></code>中定义selected=”selected”时,当前选项为默认选中。</li></ul><p>语法:</p><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">select</span> <span class="attr">name</span>=<span class="string">"se"</span> <span class="attr">id</span>=<span class="string">"select"</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"1"</span>></span>11<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"2"</span> <span class="attr">selected</span>=<span class="string">"selected"</span>></span>22<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">option</span> <span class="attr">value</span>=<span class="string">"3"</span>></span>33<span class="tag"></<span class="name">option</span>></span></span><br><span class="line"><span class="tag"></<span class="name">select</span>></span></span><br></pre></td></tr></table></figure><select name="se" id="select"> <option value="1">11</option> <option value="2" selected="selected">22</option> <option value="3">33</option></select><h3 id="lt-textarea-gt-表单元素"><a href="#lt-textarea-gt-表单元素" class="headerlink" title="<textarea>表单元素"></a><code><textarea></code>表单元素</h3><p>定义多行文本输入的控件–文本域。</p><ul><li>cols定义显示长度</li><li>rows定义显示行数<br>语法:<figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">form</span>></span></span><br><span class="line"> <span class="tag"><<span class="name">textarea</span> <span class="attr">cols</span>=<span class="string">"50"</span> <span class="attr">rows</span>=<span class="string">"5"</span>></span> </span><br><span class="line"> <span class="tag"></<span class="name">textarea</span>></span></span><br><span class="line"><span class="tag"></<span class="name">form</span>></span></span><br></pre></td></tr></table></figure></li></ul><form> <textarea cols="50" rows="5"> </textarea></form>]]></content:encoded>
<category domain="https://evrstr.cc/categories/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/%E6%A0%87%E7%AD%BE/">标签</category>
<comments>https://evrstr.cc/posts/6258.html#disqus_thread</comments>
</item>
<item>
<title>笔记-003-常用基本标签-上</title>
<link>https://evrstr.cc/posts/bf29.html</link>
<guid>https://evrstr.cc/posts/bf29.html</guid>
<pubDate>Sat, 31 Oct 2020 08:25:14 GMT</pubDate>
<description><hr>
<h1 id="标题标签"><a href="#标题标签" class="headerlink" title="标题标签"></a>标题标签</h1><figure class="highlight html"><table><tr><td</description>
<content:encoded><![CDATA[<hr><h1 id="标题标签"><a href="#标题标签" class="headerlink" title="标题标签"></a>标题标签</h1><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">h1</span>></span>大家好啊!!!<span class="tag"></<span class="name">h1</span>></span></span><br><span class="line"><span class="tag"><<span class="name">h2</span>></span>大家好啊!!!<span class="tag"></<span class="name">h2</span>></span></span><br><span class="line"><span class="tag"><<span class="name">h3</span>></span>大家好啊!!!<span class="tag"></<span class="name">h3</span>></span></span><br><span class="line"><span class="tag"><<span class="name">h4</span>></span>大家好啊!!!<span class="tag"></<span class="name">h4</span>></span></span><br><span class="line"><span class="tag"><<span class="name">h5</span>></span>大家好啊!!!<span class="tag"></<span class="name">h5</span>></span></span><br><span class="line"><span class="tag"><<span class="name">h6</span>></span>大家好啊!!!<span class="tag"></<span class="name">h6</span>></span></span><br></pre></td></tr></table></figure><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201031162420.png"></p><hr><h1 id="段落标签和换行标签"><a href="#段落标签和换行标签" class="headerlink" title="段落标签和换行标签"></a>段落标签和换行标签</h1><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">p</span>></span>“观星”采用LTE-V通信模组阵列,可实时抓取V2X空口数据,并对消息数据进行解析分析,完成规范性/数据一致性检测,并做可视化处理,对消息接收强度(dBm)、收/丢包率、通信距离等性能参数进行实时监测,对周边环境中各类设备与各类V2X消息进行统计。<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"><span class="tag"><<span class="name">p</span>></span>同时,“观星”还支持对测试过程进行录制与回放,保证测试的可复现性,便于问题追溯;支持录制过程中的事件断点插入,便于回放时快速定位关键事件点。<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"><span class="tag"><<span class="name">p</span>></span>此外,“观星”支持从空间/时间维度对测试场、道路周边V2X服务覆盖程度进行分析(综合消息数量、消息种类、接收强度、丢包率),绘制服务覆盖热力图。便于运营单位的日常设备运维,指导路测设备铺设规划。<span class="tag"></<span class="name">p</span>></span></span><br><span class="line"><span class="tag"><<span class="name">p</span>></span> “观星”的推出可切实解决测试园区、开放道路的设备运维与实车测试等业务需求。<span class="tag"></<span class="name">p</span>></span></span><br><span class="line">作者:evrstr</span><br><span class="line"><span class="tag"><<span class="name">br</span> /></span></span><br><span class="line">2020.10.30</span><br></pre></td></tr></table></figure><p><strong>效果</strong></p><p>“观星”采用LTE-V通信模组阵列,可实时抓取V2X空口数据,并对消息数据进行解析分析,完成规范性/数据一致性检测,并做可视化处理,对消息接收强度(dBm)、收/丢包率、通信距离等性能参数进行实时监测,对周边环境中各类设备与各类V2X消息进行统计。</p><p>同时,“观星”还支持对测试过程进行录制与回放,保证测试的可复现性,便于问题追溯;支持录制过程中的事件断点插入,便于回放时快速定位关键事件点。</p><p>此外,“观星”支持从空间/时间维度对测试场、道路周边V2X服务覆盖程度进行分析(综合消息数量、消息种类、接收强度、丢包率),绘制服务覆盖热力图。便于运营单位的日常设备运维,指导路测设备铺设规划。</p><p> “观星”的推出可切实解决测试园区、开放道路的设备运维与实车测试等业务需求。</p>作者:evrstr<br />2020.10.30<blockquote><p>换行标签<code><br /></code>换行时之间行距不变,而段落标签<code><p> </p></code>增加了行距。</p></blockquote><hr><h1 id="文本格式化标签"><a href="#文本格式化标签" class="headerlink" title="文本格式化标签"></a>文本格式化标签</h1><table><thead><tr><th align="center">语义</th><th align="left">标签</th><th align="left">说明</th></tr></thead><tbody><tr><td align="center"><strong>加粗</strong></td><td align="left"><code><strong></strong></code>或<code><b></b></code></td><td align="left">推荐用<code><strong></code>标签加粗 语义更重</td></tr><tr><td align="center"><em>倾斜</em></td><td align="left"><code><em></em></code>或<code><i></i></code></td><td align="left">推荐用<code><em></code></td></tr><tr><td align="center"><del>删除线</del></td><td align="left"><code><del></del></code>或<code><s></s></code></td><td align="left">推荐用<code><del></code></td></tr><tr><td align="center"><ins>下划线</ins></td><td align="left"><code><ins></ins></code>或<code><u></u></code></td><td align="left">推荐用<code><ins></code></td></tr></tbody></table><hr><h1 id="lt-div-gt-和-lt-span-gt-标签"><a href="#lt-div-gt-和-lt-span-gt-标签" class="headerlink" title="<div>和<span>标签"></a><code><div></code>和<code><span></code>标签</h1><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">div</span>></span>我是div,我独占一行!<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"><span class="tag"><<span class="name">div</span>></span>我是div,我独占一行!<span class="tag"></<span class="name">div</span>></span></span><br><span class="line"><span class="tag"><<span class="name">span</span>></span>我是span,我跨行显示!<span class="tag"></<span class="name">span</span>></span></span><br><span class="line"><span class="tag"><<span class="name">span</span>></span>我是span,我跨行显示!<span class="tag"></<span class="name">span</span>></span></span><br></pre></td></tr></table></figure><p><strong>效果</strong></p><div>我是div,我独占一行!</div><div>我是div,我独占一行!</div><span>我是span,我跨行显示!</span><span>我是span,我跨行显示!</span><blockquote><p>可以简单理解为div为大盒子,span为小盒子。</p></blockquote><hr><h1 id="图像标签和路径"><a href="#图像标签和路径" class="headerlink" title="图像标签和路径"></a>图像标签和路径</h1><h2 id="图像标签的属性"><a href="#图像标签的属性" class="headerlink" title="图像标签的属性"></a>图像标签的属性</h2><p>主要的一部分</p><table><thead><tr><th align="center">属性</th><th align="left">属性值</th><th align="center">必需</th><th align="left">说明</th></tr></thead><tbody><tr><td align="center">src</td><td align="left">URL</td><td align="center">是</td><td align="left">可能的值:绝对 URL - 指向其他站点(比如 src=”<a href="http://www.example.com/"%EF%BC%89">http://www.example.com/")</a> 相对 URL - 指向站点内的文件(比如 src=”/i/image.gif”)</td></tr><tr><td align="center">alt</td><td align="left">text</td><td align="center">是</td><td align="left">替换文本,图像不能显示时才显示的文字</td></tr><tr><td align="center">title</td><td align="left">text</td><td align="center">否</td><td align="left">提示文本,鼠标放到图像上时显示的文字</td></tr><tr><td align="center">width</td><td align="left">pixels %</td><td align="center">否</td><td align="left">设置图片的宽度,如400 或 100%</td></tr><tr><td align="center">height</td><td align="left">pixels %</td><td align="center">否</td><td align="left">设置图片的高度,如400 或 100%</td></tr><tr><td align="center">border</td><td align="left">pixels</td><td align="center">否</td><td align="left"><font color=red>不推荐使用</font>,设置图片的边框粗细,如10</td></tr></tbody></table><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/62747191_compressed.jpg"</span> <span class="attr">alt</span>=<span class="string">"图片alt"</span> <span class="attr">title</span>=<span class="string">"图片title"</span> <span class="attr">width</span> = <span class="string">"100"</span> <span class="attr">height</span>=<span class="string">"100"</span> <span class="attr">border</span>=<span class="string">"5"</span>/></span></span><br><span class="line"></span><br><span class="line"><span class="tag"><<span class="name">img</span> <span class="attr">src</span>=<span class="string">"https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/62747191_compressed.jpg"</span> <span class="attr">alt</span>=<span class="string">"图片alt"</span> <span class="attr">title</span>=<span class="string">"图片title"</span> <span class="attr">width</span> = <span class="string">"400"</span> <span class="attr">height</span>=<span class="string">"400"</span> <span class="attr">border</span>=<span class="string">"10"</span>/></span></span><br></pre></td></tr></table></figure><p><strong>效果</strong> 这里border失效了</p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/62747191_compressed.jpg" alt="图片alt" title="图片title" width = "100" height="100" border="10"/><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/62747191_compressed.jpg" alt="图片alt" title="图片title" width = "200" height="200" border="5"/><h2 id="路径"><a href="#路径" class="headerlink" title="路径"></a>路径</h2><h3 id="相对路径"><a href="#相对路径" class="headerlink" title="相对路径"></a>相对路径</h3><p>以引用文件所在目录为参考,而建立的目录。(相对于HTML文件的位置)</p><table><thead><tr><th align="center">相对路径分类</th><th align="center">符号</th><th align="left">说明</th></tr></thead><tbody><tr><td align="center">同一级路径</td><td align="center"></td><td align="left">和HTNL文件处于同一目录,如<code><img src="jpg.jpg" /></code></td></tr><tr><td align="center">下一级路径</td><td align="center">/</td><td align="left">处于HTNL文件下一级目录,如<code><img src="img/jpg.jpg" /></code></td></tr><tr><td align="center">上一级路径</td><td align="center">../</td><td align="left">处于HTNL文件上一级目录,如<code><img src="../jpg.jpg" /></code></td></tr></tbody></table><h3 id="绝对路径"><a href="#绝对路径" class="headerlink" title="绝对路径"></a>绝对路径</h3><p>例如:src=”<a href="http://www.example.com/"">http://www.example.com/"</a> src=”D:/img/image.gif”</p><h1 id="超链接标签"><a href="#超链接标签" class="headerlink" title="超链接标签"></a>超链接标签</h1><h2 id="链接的语法格式"><a href="#链接的语法格式" class="headerlink" title="链接的语法格式"></a>链接的语法格式</h2><figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag"><<span class="name">a</span> <span class="attr">href</span>=<span class="string">"跳转目标"</span> <span class="attr">tartget</span>=<span class="string">"跳出方式"</span>></span>文本或图像等<span class="tag"></<span class="name">a</span>></span></span><br></pre></td></tr></table></figure><p><a href="https://evrstr.tk" tartget="_blank">文本或图像等</a></p><table><thead><tr><th align="center">属性</th><th align="left">属性值</th><th align="center">必需</th><th align="left">说明</th></tr></thead><tbody><tr><td align="center">href</td><td align="left">URL , 锚链接</td><td align="center">是</td><td align="left">指定链接目标的URL地址或锚点,可以是外部链接或内部链接或锚点(href=”#id”)。</td></tr><tr><td align="center">target</td><td align="left">_self , _blank</td><td align="center">否</td><td align="left">指定链接页面的打开方式,_self当前窗口打开,_blank新窗口打开。</td></tr></tbody></table>]]></content:encoded>
<category domain="https://evrstr.cc/categories/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/%E6%A0%87%E7%AD%BE/">标签</category>
<comments>https://evrstr.cc/posts/bf29.html#disqus_thread</comments>
</item>
<item>
<title>笔记-002-WEB标准</title>
<link>https://evrstr.cc/posts/41f4.html</link>
<guid>https://evrstr.cc/posts/41f4.html</guid>
<pubDate>Sat, 31 Oct 2020 08:24:13 GMT</pubDate>
<description><hr>
<h1 id="WEB标准"><a href="#WEB标准" class="headerlink"</description>
<content:encoded><![CDATA[<hr><h1 id="WEB标准"><a href="#WEB标准" class="headerlink" title="WEB标准"></a>WEB标准</h1><p>WEB标准是由W3C组织和其他标准化组织制定的一系列的标准集合。W3C(万维网联盟)是国际最著名的标准化组织。</p><hr><h2 id="WEB标准构成"><a href="#WEB标准构成" class="headerlink" title="WEB标准构成"></a>WEB标准构成</h2><p>主要包括<strong>结构(Structure)</strong>、<strong>表现(Presentation)</strong>、<strong>行为(Behavior)</strong>三个方面。</p><table><thead><tr><th align="center">标准</th><th align="center">说明</th></tr></thead><tbody><tr><td align="center">结构</td><td align="center">对网页元素整理和分类</td></tr><tr><td align="center">表现</td><td align="center">设置网页元素版式、颜色、大小等外观样式,主要指CSS</td></tr><tr><td align="center">行为</td><td align="center">指网页模型的定义及交互的编写</td></tr></tbody></table><p>WEB标准提出的最佳体验方案:<font color="red"><strong>结构、样式、行为相分离。</strong></font></p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201031151516.png"></p>]]></content:encoded>
<category domain="https://evrstr.cc/categories/WEB/">WEB</category>
<category domain="https://evrstr.cc/tags/WEB%E6%A0%87%E5%87%86/">WEB标准</category>
<comments>https://evrstr.cc/posts/41f4.html#disqus_thread</comments>
</item>
<item>
<title>笔记-001-网页的相关概念</title>
<link>https://evrstr.cc/posts/795.html</link>
<guid>https://evrstr.cc/posts/795.html</guid>
<pubDate>Sat, 31 Oct 2020 06:23:39 GMT</pubDate>
<description><hr>
<h1 id="网页"><a href="#网页" class="headerlink" title="网页"></a>网页</h1><h2 id="什么是网页"><a href="#什么是网页" class="headerlink"</description>
<content:encoded><![CDATA[<hr><h1 id="网页"><a href="#网页" class="headerlink" title="网页"></a>网页</h1><h2 id="什么是网页"><a href="#什么是网页" class="headerlink" title="什么是网页"></a>什么是网页</h2><blockquote><p>网站是指在英特网上根据一定规则,使用HTML等制作的用于展示特定内容相关的网页集合。<br /><br>网页是网站中的一页,通常是<strong>HTML格式的文件</strong>,通过浏览器阅读。</p></blockquote><blockquote><p><strong>网页是构成网站的基本元素</strong>,它通常由图片、链接、文字、视频等元素构成。有.html或.htm结尾,因此俗称HTML文件。</p></blockquote><hr><h2 id="什么是HTML"><a href="#什么是HTML" class="headerlink" title="什么是HTML"></a>什么是HTML</h2><p>HTML指<strong>超文本标记语言(HyperText Markup Language)</strong>,它是用来描述网页的一种语言。HTML不是一种编程语言,而是一种标记语言(Markup Language),标记语言是一套标记标签(Markup tag)。</p><h3 id="所谓超文本,有两层含义:"><a href="#所谓超文本,有两层含义:" class="headerlink" title="所谓超文本,有两层含义:"></a>所谓超文本,有两层含义:</h3><ol><li>可以加入图片、声音、动画等多媒体内容(超越了文本限制)。</li><li>可以从一个文件跳转到另一个文件,与世界各地的主机相连(超级链接文本)。</li></ol><hr><h2 id="网页的形成"><a href="#网页的形成" class="headerlink" title="网页的形成"></a>网页的形成</h2><p>网页由网页元素组成,这些元素是利用HTML标签描述出来,最后通过浏览器解析出来显示给用户。<br><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20201031144257.png"></p><p>前端人员开发代码 –> 浏览器显示代码(解析、渲染) –> 生成web页面</p><hr>]]></content:encoded>
<category domain="https://evrstr.cc/categories/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/HTML/">HTML</category>
<category domain="https://evrstr.cc/tags/%E7%BD%91%E9%A1%B5/">网页</category>
<comments>https://evrstr.cc/posts/795.html#disqus_thread</comments>
</item>
<item>
<title>开始我的前端之旅!!!</title>
<link>https://evrstr.cc/posts/d69b.html</link>
<guid>https://evrstr.cc/posts/d69b.html</guid>
<pubDate>Sat, 31 Oct 2020 04:17:26 GMT</pubDate>
<description><h1 id="开始自学前端"><a href="#开始自学前端" class="headerlink" title="开始自学前端"></a>开始自学前端</h1><p>本博客主要记录学习过程中的笔记及感想!</p>
<p><img src=</description>
<content:encoded><![CDATA[<h1 id="开始自学前端"><a href="#开始自学前端" class="headerlink" title="开始自学前端"></a>开始自学前端</h1><p>本博客主要记录学习过程中的笔记及感想!</p><p><img src= "https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/loading.gif" data-lazy-src="https://cdn.jsdelivr.net/gh/evrstr/img/blog_evrstr/20191027201320.jpg"></p><hr><p>本站写文章时一些标签块的使用</p><h1 id="标签插件(Tag-Plugins)"><a href="#标签插件(Tag-Plugins)" class="headerlink" title="标签插件(Tag Plugins)"></a>标签插件(Tag Plugins)</h1>]]></content:encoded>
<category domain="https://evrstr.cc/categories/%E6%97%A5%E5%B8%B8/">日常</category>
<category domain="https://evrstr.cc/tags/%E6%97%A5%E5%B8%B8/">日常</category>
<comments>https://evrstr.cc/posts/d69b.html#disqus_thread</comments>
</item>
</channel>
</rss>