Как применить класс CSS к компоненту? - PullRequest
1 голос
/ 19 февраля 2012

Почему я не могу применить свой класс CSS к hello?

{name: "hello", content: "Hello From Enyo", className: "myClass", ontap: "helloTap"},

Ответы [ 3 ]

3 голосов
/ 20 февраля 2012

Enyo 2.0 изменил способ указания классов для ваших компонентов.Вам больше не нужно указывать стили или классы в ваших добрых определениях.Если вам нужно сделать это, вы можете использовать «классы» вместо «className».

Рекомендуемый способ - вызывать addClasses (был addClass в Enyo 1.0) внутри вашей функции create.Чтобы добавить стили напрямую, вызовите addStyles.

1 голос
/ 20 февраля 2012

Вы все еще можете "обмануть" старый стиль, просто используйте классы вместо className

0 голосов
/ 19 февраля 2012

Из документации, которую я прочитал, вы, кажется, делаете это правильно.

http://enyowiki.com/ (прокрутите вниз)

developer.Palm

Я пробовал то же самое, и я не могу заставить его работать с использованием внешней таблицы стилей. Вы всегда можете сделать стиль в enyo с ключевым словом style.

style:"background-color:blue;height: 50px; width: 30px;"

Но это определенно нехорошо, если вы хотите иметь несколько объектов в одном стиле. Хороший вопрос, надеюсь, кто-нибудь найдет ответ.

........................................

Во время написания этой статьи я попытался опробовать некоторые другие варианты. Я использовал .addClass ("CSS-класс") функция после создания вида (http://enyojs.com/api/#enyo.Control::addClass). См. код ниже:

enyo.kind({
    name: "Menu",
    kind: "Control",
    components: [
        {name: "back", tag:"div"}
    ]

});
var menu = new Menu();
menu.addClass("box");
menu.write();

Мой CSS находится во внешней таблице стилей:

.box{
    background-color:red;
    width: 520px;
    height: 600px;
    margin:auto;
    margin-top:75px;
}

Надеюсь, это поможет. Если вы найдете лучший способ, пожалуйста, поделитесь им.

...