LoginSignup
1
1

More than 5 years have passed since last update.

stylusでいい感じに連番をふる

Posted at

小ネタです。

stylusで、イテレーション使って
.number-1
.number-2
...
みたいなクラスに対して、contentに数字を入れるようなルールを定義したいとき。すごく普通にやりますと、

stylus
for i in (1..5)
  .number-{i}
    &::before
      content i
css
.number-1::before {
  content: 1;
}
.number-2::before {
  content: 2;
}
.number-3::before {
  content: 3;
}
.number-4::before {
  content: 4;
}
.number-5::before {
  content: 5;
}

こうなります。駄目です。

stackoverflowで見かけたやつですと、

stylus
for i in (1..5)
  .number-{i}
    &::before
      content \'i\'
css
.number-1::before {
  content: ' 1 ';
}
.number-2::before {
  content: ' 2 ';
}
.number-3::before {
  content: ' 3 ';
}
.number-4::before {
  content: ' 4 ';
}
.number-5::before {
  content: ' 5 ';
}

何だこのスペース。
気にしなきゃいいのかもしれないけれど、たまにレイアウトに干渉するのが難点。

いろいろ内部関数なども調べてみたけれど、まったく関係なく

stylus
for i in (1..5)
  .number-{i}
    &::before
      content "" + i
css
.number-1::before {
  content: '1';
}
.number-2::before {
  content: '2';
}
.number-3::before {
  content: '3';
}
.number-4::before {
  content: '4';
}
.number-5::before {
  content: '5';
}

なんというかトンチみたいな解決法でした。考えすぎでした。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1