~ubuntu-branches/ubuntu/wily/phabricator/wily

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
@ruleset: {
     color: black;
     background: white;
  };

@a: 1px;
.wrap-mixin(@ruleset) {
  @a: hidden and if you see this in the output its a bug;
  @b: visible;
  @d: magic-frame; // same behaviour as mixin calls - falls back to this frame
  .wrap-selector {
      @c: visible;
      @ruleset();
      visible-one: @b;
      visible-two: @c;
    }
};

.wrap-mixin({
  color: black;
  one: @a;
  @b: hidden and if you see this in the output its a bug;
  @c: hidden and if you see this in the output its a bug;
  four: @d;
});

.wrap-mixin(@ruleset: {
  color: red;
});

.wrap-mixin(@ruleset);

.desktop-and-old-ie(@rules) {
  @media screen and (min-width: 1200) { @rules(); }
  html.lt-ie9 &                       { @rules(); }
}

header {
  background: blue;

  .desktop-and-old-ie({
    background: red;
  });
}

.wrap-mixin-calls-wrap(@ruleset) {
  .wrap-mixin(@ruleset);
};

.wrap-mixin({
  test: extra-wrap;
  .wrap-mixin-calls-wrap({
    test: wrapped-twice;
  });
});

.wrap-mixin({
  test-func: unit(90px);
  test-arithmetic: unit((9+9), px);
});
// without mixins
@ruleset-2: {
  b: 1;
};
.without-mixins {
  @ruleset-2();
}
@my-ruleset: {
    .my-selector {
      @media tv {
        background-color: black;
      }
    }
  };
@media (orientation:portrait) {
    @my-ruleset();
    .wrap-media-mixin({
      @media tv {
        .triple-wrapped-mq {
          triple: true;
        }
      }
    });
}
.wrap-media-mixin(@ruleset) {
  @media widescreen {
    @media print {
      @ruleset();
    }
    @ruleset();
  }
  @ruleset();
}
// unlocking mixins
@my-mixins: {
  .mixin() {
    test: test;
  }
};
@my-mixins();
.a {
  .mixin();
}
~~~~~~~~~~