一,為什么要用smarty進(jìn)行打包
apache中也有給js,css這樣的靜態(tài)文件進(jìn)行打包壓縮的模塊,但是本文所說的不是以這種方式進(jìn)行的打包,而是和smarty結(jié)合的方式來把網(wǎng)站中的js,css文件進(jìn)行打包。
為什么要進(jìn)行打包呢,主要目的是為了合理的管理自己的代碼?,F(xiàn)在有好多網(wǎng)站,你查看一下網(wǎng)站的源碼的話,你會(huì)發(fā)現(xiàn)網(wǎng)站的頭部有大量的JS文件和CSS文件,網(wǎng)站的尾部也有可能有大量的JS文件。以webqq為例吧:
<script type="text/javascript" src="js/util.js?20100429001"></script> <script type="text/javascript" src="js/webeditor.js?20100429001"></script> <script type="text/javascript" src="js/helptip.js?20100429001"></script> <script type="text/javascript" src="js/window.js?20100429001"></script> <script type="text/javascript" src="js/main-panel.js?20100611001"></script> <!-- this script is for flashplayer version detection --> <script type="text/javascript" src="js/fp_detect.js"></script> <!--script type="text/javascript" src="js/tab-msgbox.js?20090311"></script--> <script type="text/javascript" src="js/tab-buddystate.js?20090927001"></script> <!--script type="text/javascript" src="js/tab-buddyimpression.js?20090311"></script--> <script type="text/javascript" src="js/tab-addbuddy.js?20091210001"></script> <script type="text/javascript" src="js/main.js?20100611001"></script> <script language="javascript" src="http://pingjs.qq.com/ping.js"></script>
上面的代碼是放在webqq的底部,看著很不爽,如果只顯示一個(gè)話,看著是不是很舒服呢?結(jié)果是肯定的。
二,用一個(gè)JS文件來包涵多個(gè)JS文件
1,用function
function include(filename) { document.write("<script language='JavaScript' type='text/javascript' src='" + filename + "'></script>"); } include("js/jquery-1.3.2.js"); include("js/test.js");
2,用數(shù)組
var jsarray = new Array(); jsarray[0] = "js/jquery-1.3.2.js"; jsarray[1] = "js/test.js"; for(i=0;i<jsarray.length;i++){ document.write("<script type='text/javascript' src='"+jsarray[i]+"'></script>"); }
三,模板文件
{foreach from=$jsArr item=js} <script src="{$js}" type="text/javascript"></script> {/foreach}
四,調(diào)用模板的php文件
public function addCss($<a href="http://www.php1.cn/category/72.html">css</a>) { if (!is_array($<a href="http://www.php1.cn/category/72.html">css</a>)) { $this->tpl->append('<a href="http://www.php1.cn/category/72.html">css</a>Arr', $<a href="http://www.php1.cn/category/72.html">css</a>); } else { $this->tpl->append('<a href="http://www.php1.cn/category/72.html">css</a>Arr', $<a href="http://www.php1.cn/category/72.html">css</a>, true); } } public function addJs($js) { if (!is_array($js)) { $this->tpl->append('jsArr', $js); } else { $this->tpl->append('jsArr', $js, true); } } $this->addJs("./js/test.pkg.js");
五,總結(jié)
這樣做的好處是什么呢,個(gè)人分析了以下二點(diǎn):
1,把一個(gè)頁面包涵的js,css文件轉(zhuǎn)變成一個(gè),代碼簡單
2,把這些js,css放到一個(gè)js文件里面,便于管理,如果我想加一個(gè)js,減一個(gè)js很方便,你就不用在去改模板了,如果模板多的話,你都要一個(gè)頁面,一個(gè)頁面去改的話,很煩人的。
如果用的不是smarty模板的話也是一樣,都可以拿出來的,如果沒用模板的話也是可以的,在這里只是表達(dá)一種思想。

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Um die Textfarbe in CSS zu ?ndern, müssen Sie das Farbattribut verwenden. 1. Verwenden Sie das Farbattribut, um die Textvorderfarbe des Textes zu setzen und Farbnamen (z. B. rot), Hexadezimalcodes (wie #ff0000), RGB -Werte (wie RGB (255,0,0)), HSL -Werte (wie HSL (0,100%) und RGBA oder HSLA (0,100%) und RGBA oder HSLA mit Transparen (0,100%) und RGBA oder HSLA (0,100%) (255,0,0,0,0,0,0,0,0,0,0). 2. Sie k?nnen Farben auf jedes Element anwenden, das Text enth?lt, wie z. B. H1 auf H6 -Titel, Absatz P, Link A (beachten Sie die Farbeinstellungen verschiedener Zust?nde von A: Link, A: Besucht, a: hover, a: aktiv), Schaltfl?chen, Div, Span usw.; 3.. Die meisten

In der Webentwicklung h?ngt die Auswahl der CSS -Einheiten von den Entwurfsanforderungen und der reaktionsschnellen Leistung ab. 1. Pixel (PX) werden verwendet, um Gr??en wie Grenzen und Ikonen zu reparieren, sind jedoch nicht für reaktionsschnelles Design f?rderlich. 2. Prozentsatz (%) wird gem?? dem übergeordneten Container angepasst, das zum Streaming -Layout geeignet ist, aber auf die Kontextabh?ngigkeit beachtet wird. 3.EM basiert auf der aktuellen Schriftgr??e. 4. Ansichtsfenster (VW/VH/VMIN/VMAX) werden gem?? der Bildschirmgr??e eingestellt, geeignet für Vollbild-Elemente und dynamische UI. 5. Auto-, Erben-, Anfangs- und andere Werte werden verwendet, um Stile automatisch zu berechnen, zu erben oder zurückzusetzen. Die rationale Verwendung dieser Einheiten kann die Flexibilit?t und Reaktionsf?higkeit der Seiten verbessern.

ASTACKINGCONTEXTISASELF-ContainedLayerincsSthatControlsThez-CorderoverlapPingElements, wonach contextSrestrictz-Indexintertions;

Backdrop-Filter wird verwendet, um visuelle Effekte auf den Inhalt der Elemente anzuwenden. 1. Verwenden Sie Backdrop-Filter: Blur (10px) und andere Syntax, um den frostierten Glasffekt zu erzielen. 2. unterstützt mehrere Filterfunktionen wie Unsch?rfe, Helligkeit, Kontrast usw. und kann überlagert werden. 3. Es wird h?ufig in der Glaskartendesign verwendet, und es ist notwendig, sicherzustellen, dass sich die Elemente mit dem Hintergrund überschneiden. 4. Moderne Browser haben eine gute Unterstützung, und @Supports k?nnen verwendet werden, um Downgrade -L?sungen bereitzustellen. 5. Vermeiden Sie überm??ige Unsch?rfewerte und h?ufiges Neuzuziehen, um die Leistung zu optimieren. Dieses Attribut wirkt sich nur aus, wenn sich hinter den Elementen Inhalte befinden.

Der Stil der Verbindung sollte verschiedene Zust?nde durch Pseudoklassen unterscheiden. 1. Verwenden Sie A: Link zum festgelegten Linkstil, 2. A: Besucht, um den zugegriffenen Link zu setzen, 3. A: HOOver, um den Schweberffekt festzulegen, 4. A: aktiv, um den Klick-Time-Stil festzulegen, 5. Sie k?nnen die Benutzerfreundlichkeit und Zug?nglichkeit verbessern, indem Sie Polster, Cursor: Zeiger und Fokusumrisse beibehalten oder anpassen. Sie k?nnen auch Border-Bottom- oder Animations-Unterstockungen verwenden, um sicherzustellen, dass der Link in allen Staaten eine gute Benutzererfahrung und -grafie hat.

Verwenden Sie Text-Align: Mitte, um eine horizontale Zentrierung von Text zu erreichen. 2. Verwenden Sie Flexbox's Align-Items: Center und Justify-Content: Center, um vertikale und horizontale Zentrierung zu erreichen. 3. Einleitender Text kann vertikal zentriert werden, indem die Linienh?he gleich der Beh?lterh?he festgelegt wird. 4. Absolute Positionierungselemente k?nnen mit oben kombiniert werden: 50%, links: 50%und Transformation: übersetzen (-50%, -50%), um Zentrierung zu erreichen; 5. CSSGrid's Place-Items: Das Zentrum kann auch gleichzeitig eine doppelte Achse erreichen. Es wird empfohlen, Flexbox oder Grid zuerst in modernen Layouts zu verwenden.

User Agent Stylesheets sind die Standard -CSS -Stile, die Browser automatisch gelten, um sicherzustellen, dass HTML -Elemente, die keine benutzerdefinierten Stile hinzugefügt haben, immer noch grundlegend lesbar sind. Sie beeinflussen das anf?ngliche Erscheinungsbild der Seite, es gibt jedoch Unterschiede zwischen Browsern, die zu einer inkonsistenten Anzeige führen k?nnen. Entwickler l?sen dieses Problem h?ufig durch Zurücksetzen oder Standardisierungsstile. Verwenden Sie das Computer- oder Stilfeld der Entwickler -Tools, um die Standardstile anzuzeigen. Zu den gemeinsamen Abdeckungsvorg?ngen geh?ren das L?schen innerer und ?u?erer Margen, ?nderungen von Link -Unterstrichen, die Anpassung der Titelgr??en und die Vereinigung der Schaltfl?chenstile. Das Verst?ndnis von User Agent-Stilen kann dazu beitragen, die konsistente Cross-Browser-Konsistenz zu verbessern und eine pr?zise Layout-Steuerung zu erm?glichen.

Verwenden Sie das Randattribut, um den gestrichelten Stil festzulegen, um schnell gepunktete Linien wie Border-Top: 2PXDashed#000 zu erstellen. 2. Sie k?nnen das Erscheinungsbild der gepunkteten Linie anpassen, indem Sie die Randbreite, Farbe und den Stil einstellen. 3. Wenn Sie die gepunktete Linie auf Trenner oder Inline -Elemente anwenden, wird empfohlen, die H?he festzulegen oder den Standardstil von HR zurückzusetzen. 4. Wenn Sie die L?nge und den Abstand der gepunkteten Linie genau steuern müssen, sollten Sie Hintergrundbild und linearer Gradient verwenden
