Как удалить отступы из элемента списка объектов?
У меня есть список с сгруппированными объектами списка объектов в нем. Как здесь, в Исследуемом приложении, нажмите "Образцы". Теперь каждый из этих предметов имеет отступ 1rem
, данный css с селектором .sapMLIB.sapMObjLItem
,
Теперь я хотел уменьшить верхний и нижний отступы до 0.25rem
, поэтому я добавил класс к объекту и импортировал пользовательский CSS (через manifest.json
), все как описано в пошаговом руководстве. Это не сработало, так как обычный CSS перезаписывает мой пользовательский.
Другой попыткой было добавить класс sapUiNoContentPadding
элементам, а также правилам css, которые перезаписываются правилами, описанными в первом абзаце.
Что я делаю неправильно? как убрать этот отступ, не переписывая рендер?
Мой взгляд:
<mvc:View
controllerName="sap.ui.xxxx.someapp.controller.MyList"
xmlns="sap.m"
xmlns:mvc="sap.ui.core.mvc">
<StandardListItem title="Titel"/>
<List class="sapUiResponsiveMargin sapUiNoContentPadding"
width="auto"
items="{path : '//elementsSet',
sorter : {
path : 'attribute1}',
group : true
}
}">
<items>
<ObjectListItem title="{= ${attribute1} === '' ? 'Enter Text Please' : ${attribute1}}"
icon="{= ${attribute1} === '' ? 'sap-icon://alert' : 'sap-icon://sys-enter'}"
number="{attribute4}"
numberUnit="$"
numberState="{= ${attribute4} > 10 ? 'Error' : 'Success' }"
type="Active" press="onItemPress"
markFlagged="true" markFavorite="true"
showMarkers="true"
class="sapUiNoContentPadding myownclassforpadding">
<firstStatus>
<ObjectStatus
text="some text" />
</firstStatus>
<attributes>
<ObjectAttribute text="{attribute1}" visible="false"/>
<ObjectAttribute text="{attribute2}"/>
<ObjectAttribute text="{attribute3}" visible="false"/>
<ObjectAttribute text="{attribute4}" visible="false"/>
</attributes>
</ObjectListItem>
</items>
</List>
</mvc:View>
мой css
.myownclassforpadding{
padding: 0;
background-color: green;
}
3 ответа
Ваш CSS класс myownclassforpadding
не будет использоваться, потому что CSS из библиотеки более специфичен, так как использует два класса sapMLIB
а также sapMObjLItem
, Вы можете сделать свой CSS более конкретным следующим образом:
.sapMLIB.sapMObjLItem.myownclassforpadding{
padding: 0;
background-color: green;
}
Посмотрите на пример JSBin.
Попробуйте селектор ниже, чтобы переопределить CSS по умолчанию.
.sapMLIB.sapMObjLItem.myownclassforpadding{
padding-top: 0.25rem;
padding-bottom: 0.25rem;
background-color: green;
}
Если ты пишешь !important
после того, как свойства, которые вы хотите изменить, будут перезаписаны sapUI5
свойства класса.
Например:
.myownclassforpadding{
padding: 0 !important;
background-color: green !important;
}
Это сделает ваши свойства отступов и фона более приоритетными, чем sapUI5
,