在本章中,我們來研究函數(shù)指令。在SASS中,您可以創(chuàng)建自己的函數(shù),并在腳本上下文中使用它們,或者可以與任何值一起使用。通過使用函數(shù)名和任何參數(shù)來調(diào)用函數(shù)。
下面的例子演示了在SCSS文件中使用function指令:
<html> <head> <title>Nested Rules</title> <link rel="stylesheet" type="text/css" href="style.css" /> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> <script src="/attachments/tuploads/sass/jquery.min.js"></script> <script src="/attachments/tuploads/sass/bootstrap.min.js"></script> </head> <body> <div class="container" id="set_width"> <h2>Example for Function directives</h2> <p>SASS stands for Syntactically Awesome Stylesheet. </p> </div> </body> </html>
接下來,創(chuàng)建文件 style.scss 。
$first-width: 5px; $second-width: 5px; @function adjust_width($n) { @return $n * $first-width + ($n - 1) * $second-width; } #set_width { padding-left: adjust_width(10); }
您可以通過使用以下命令讓SASS查看文件并在SASS文件更改時更新CSS:
sass --watch C:\ruby\lib\sass\style.scss:style.css
接下來執(zhí)行上面的命令,它將用下面的代碼自動創(chuàng)建 style.css 文件:
#set_width { padding-left: 95px; }
讓我們執(zhí)行以下步驟,看看上面的代碼如何工作:
將上述html代碼保存在 function_directive.html 文件中。
在瀏覽器中打開此HTML文件,將顯示如下輸出。
在輸出中,您可以看到正在應用左側(cè)填充。
就像mixin一樣,函數(shù)也可以訪問全局定義的變量,也可以接受參數(shù)。 您應該使用 @return 來調(diào)用函數(shù)的返回值。 我們可以使用關鍵字參數(shù)調(diào)用SASS定義的函數(shù)。
調(diào)用上述函數(shù),如下所示。
#set_width { padding-left: adjust_width($n: 10); }
為了避免命名沖突,函數(shù)名稱可以帶前綴,以便可以輕松區(qū)分。 與mixins一樣,用戶定義的函數(shù)也支持變量參數(shù)。 函數(shù)和其他SASS標識符可以交替使用下劃線(_)和連字符( - )。
例如,如果函數(shù)定義為 adjust_width,則它可以用作 adjust-width,反之亦然。
更多建議: