我在 YUI 3 中使用 YUI 2 的日历。它如何加载 Sam 的皮肤 CSS?
我没有手动包含它(虽然看起来我应该这样用户可以在我向 CSS 组合加载器发出的一个请求中下载它)。奇怪的是,我没有看到它被下载,也没有在 JS 文件中看到它。我一定是忽略了它。这就是我现在加载 CSS 和 JS 的方式:
<head>
...
<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/combo?3.1.0/build/cssreset/reset.css&3.1.0/build/cssfonts/fonts.css&3.1.0/build/cssbase/base.css"/>
...
</head>
...
<!--and at the end of the body tag:-->
<script type="text/javascript" src="http://yui.yahooapis.com/combo?3.1.1/build/yui/yui-min.js&3.1.1/build/oop/oop-min.js&3.1.1/build/event-custom/event-custom-base-min.js&3.1.1/build/event/event-base-min.js&3.1.1/build/json/json-parse-min.js&3.1.1/build/querystring/querystring-stringify-simple-min.js&3.1.1/build/io/io-base-min.js&3.1.1/build/dom/dom-base-min.js&3.1.1/build/dom/selector-native-min.js&3.1.1/build/dom/selector-css2-min.js&3.1.1/build/node/node-base-min.js&3.1.1/build/node/node-style-min.js&3.1.1/build/stylesheet/stylesheet-min.js&2in3.1/2.8.0/build/yui2-calendar/yui2-calendar-min.js&2in3.1/2.8.0/build/yui2-yahoo/yui2-yahoo-min.js&2in3.1/2.8.0/build/yui2-dom/yui2-dom-min.js&2in3.1/2.8.0/build/yui2-event/yui2-event-min.js"></script>
<script type="text/javascript">//<![CDATA[
YUI().use('yui2-calendar', function(Y) {
var YAHOO = Y.YUI2;
var cal = new YAHOO.widget.Calendar("cal",{navigator:true,mindate:'1/1/2000');
cal.render();
// ...
编辑: 我想对默认的 sam 皮肤做一些小改动。最好的方法是什么?
我回答了这部分问题。如果我将日历包装在一个额外的 div 中,那么指定包括该 div 作为选择器一部分的 CSS 规则会使规则更加具体,以便浏览器在 Sam 的皮肤上使用它。粗略的例子:
<style type="text/css">
.magic .yui-skin-sam .yui-calendar td.calcell {
height: 10em;
width: 15em;
}
</style>
...
<div class="magic">
<div class="yui-skin-sam">
<div id="cal"></div>
</div>
</div>
最佳答案
http://yuilibrary.com/forum/viewtopic.php?f=93&t=2269&p=7608&hilit=insertbefore#p7608
该线程包含有关使用 insertBefore 配置的信息,它允许您确保 YUI CSS 插入到 CSS 级联中您的样式覆盖之上。
-埃里克
关于javascript - YUI 日历 : how does it load the Sam's Skin CSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2798649/