Какие инструменты байт-кода CLR/.NET существуют? [закрытый]

Во многих случаях элемент должен располагаться для работы z-index.

Действительно, применение position: relative к элементам в вопросе, скорее всего, решит проблему (но кода недостаточно, чтобы знаю наверняка).

На самом деле, position: fixed, position: absolute и position: sticky также активируют z-index, но эти значения также изменяют макет. С position: relative макет не нарушен.

По сути, пока элемент не position: static (значение по умолчанию), он считается позиционированным и z-index будет работать.


Многие ответы на «Почему z-index не работает?» утверждают, что z-index работает только на позиционированных элементах. Начиная с CSS3, это уже не так.

Элементы, которые являются элементами flex items или grid , могут использовать z-index, даже если position static.

Из спецификаций:

4.3. Элемент Flex Item Z-Ordering

Элементы Flex представляют собой то же самое, что и встроенные блоки, за исключением того, что порядок ортогонального заказа используется вместо необработанного порядка документа и z-index значения, отличные от auto создать контекст стекирования, даже если position - static.

5.4. Z-axis Ordering: свойство z-index

Порядок окраски элементов сетки точно такой же, как и встроенные блоки, за исключением того, что порядок ортогонального заказа используется вместо необработанного порядка документа , и z-index, отличные от auto, создают контекст стекирования, даже если position равен static.

blockquote>

Вот демонстрация работы z-index, работающей с непозиционированными элементами гибкости: https://jsfiddle.net/m0wddwxs/

7
задан Joel Coehoorn 23 September 2008 в 20:44
поделиться

5 ответов

Байт-код является двоичным форматом. работа блоков.NET, довольно отличающаяся с точки зрения того, как они хранят инструкции по выполнению.

Вместо того, чтобы компилировать вниз в подобную байт-коду структуру, языки.NET компилируются на Промежуточный язык (на самом деле, это назвало просто это - IL).

Это - человекочитаемый язык, который смотрит вид подобных объектно-ориентированная версия ассемблера.

Таким образом с точки зрения исследования или управления IL для отдельных блоков, инструменты как Отражатель и ILDASM позволяют Вам удобно просматривать IL для любого блока.

Управление несколько отличается, я предложил бы смотреть на некоторые инструменты AOP в пространстве.NET. Я также предложил бы смотреть на Финикс, который является проектом компилятора, который MS имеет в работах. Это имеет некоторые действительно прохладные функции управления посткомпиляции.

Если бы Вы хотите знать больше об инструментах AOP.NET, я предложил бы открыть другой вопрос (это - целая другая куча проблем).

Существует также несколько книг, которые будут преподавать Вам входы и выходы IL. Это не очень сложный язык для изучения.

2
ответ дан 6 December 2019 в 06:26
поделиться

Отражатель всегда хорош, но Моно. Cecil является лучшим инструментом, который можно возможно попросить в целом. Это неоценимо для управления CIL всегда.

14
ответ дан 6 December 2019 в 06:26
поделиться

Моно. Cecil является большим инструментом как ASM. Это - подпроект Моно, и полностью с открытым исходным кодом. Это даже обеспечивает лучшую функцию, чем Система. Отражение.

7
ответ дан 6 December 2019 в 06:26
поделиться

ILDASM и Отражатель приходят на ум.

4
ответ дан 6 December 2019 в 06:26
поделиться

NDepend позволяет проводить статический анализ сборок .NET (метрики кода, анализ зависимостей и т.д.). NDepend очень полезен для получения представления о структуре ваших сборок .NET с помощью матрицы зависимостей, графов зависимостей и метрик treemap визуализации.

Он также интегрирован с Reflector: например, вы можете определить важные типы и методы в ваших сборках, используя соответственно метрику Type/Method Rank (метрика кода, аналогичная Google Page Rank), и перейти непосредственно из NDepend в Reflector, чтобы получить дизассемблированный код на C#, VB.NET и т. д.

1
ответ дан 6 December 2019 в 06:26
поделиться
Другие вопросы по тегам:

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