SCSS - добавить переход к элементу after

На данный момент вы используете переменную i в качестве строки в installed_tx_calc. Однако вы не можете вычесть из строки. Вы действительно хотите использовать i в качестве индекса и доступа таким образом: installed_tx_calc[i]. Однако использование индекса может быть сложным, если вы удаляете элементы из списка, поэтому я заменил цикл for циклом while. Кроме того, я бы рекомендовал вам получить доступ к первой цифре напрямую, вместо получения фрагмента. Поэтому ваш код будет выглядеть следующим образом:

i = 1
while i < len(installed_tx_calc):
    if len(str(installed_tx_calc[i]) == 3 and str(installed_tx_calc[i])[0] == str(installed_tx_calc[i-1])[0]:
        installed_tx_calc.remove(i)
        continue
    elif str(installed_tx_calc[i])[0] == str(installed_tx_calc[i-1])[0]:
        installed_tx_calc.remove(i)
        continue
    i += 1

Имейте в виду, что это сломается, если у вас больше номеров с длиной, не равной 3 или 4. Более расширяемое решение будет:

i = 1
while i < len(installed_tx_calc):
    if len(str(installed_tx_calc[i])) == len(str(installed_tx_calc[i-1])) and str(installed_tx_calc[i])[0] == str(installed_tx_calc[i-1])[0]:
        installed_tx_calc.remove(i)
        continue
    i += 1

Конечной оптимизацией было бы избежать использования remove в пользу создания нового списка. remove может быть довольно медленной по сравнению с append, поэтому следующее будет быстрее, чем предыдущие два решения:

new_itc = []
for i in range(1, len(installed_tx_calc):
    if not (len(str(installed_tx_calc[i])) == len(str(installed_tx_calc[i-1])) and str(installed_tx_calc[i])[0] == str(installed_tx_calc[i-1])[0]):
        new_itc.append(installed_tx_calc[i])
0
задан Freestyle09 19 January 2019 в 12:49
поделиться

2 ответа

Я сделал что-то подобное, и это работает!

& a {
    position: relative;
    display: inline-block;
    height: 100%;
    z-index: 1090;
    &::after {
      content: '>';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: $main-color;
      opacity: 0;
      transition: 0.5s opacity;
      cursor: pointer;
    }
    &:hover::after {
      opacity: 0.3;
    }
  }
0
ответ дан Freestyle09 19 January 2019 в 12:49
поделиться

Кажется, отлично работает на https://codepen.io/anon/pen/MZNjeZ , предполагая, что контейнер .imageGallery1 имеет размеры ( width, height ]) так что он может расширяться до 100% из него.

0
ответ дан Gabriele Petrioli 19 January 2019 в 12:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: