mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-19 03:32:21 +08:00
refactor(item): changed the ion-item-group-title to an ion-item-divider with a sticky attribute
Added a test for dividers. Closes #636
This commit is contained in:
@ -49,14 +49,14 @@ ion-item-group {
|
|||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-item-group-title {
|
ion-item-divider {
|
||||||
display: block;
|
display: block;
|
||||||
min-height: 30px;
|
min-height: 30px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
z-index: 1000;
|
z-index: 1000;
|
||||||
|
|
||||||
&.sticky {
|
&[sticky] {
|
||||||
position: -webkit-sticky;
|
position: -webkit-sticky;
|
||||||
position: sticky;
|
position: sticky;
|
||||||
top: 0px;
|
top: 0px;
|
||||||
|
@ -32,12 +32,6 @@ $item-ios-sliding-transition: transform 250ms ease-in-out !default;
|
|||||||
|
|
||||||
|
|
||||||
ion-item-group {
|
ion-item-group {
|
||||||
ion-item-group-title {
|
|
||||||
padding: $item-ios-padding-top $item-ios-padding-right $item-ios-padding-bottom $item-ios-padding-left;
|
|
||||||
background-color: $item-ios-divider-bg;
|
|
||||||
color: $item-ios-divider-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item:first-child {
|
.item:first-child {
|
||||||
.item-inner {
|
.item-inner {
|
||||||
border-top-width: 0;
|
border-top-width: 0;
|
||||||
@ -50,6 +44,12 @@ ion-item-group {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ion-item-divider {
|
||||||
|
padding: $item-ios-padding-top $item-ios-padding-right $item-ios-padding-bottom $item-ios-padding-left;
|
||||||
|
background-color: $item-ios-divider-bg;
|
||||||
|
color: $item-ios-divider-color;
|
||||||
|
}
|
||||||
|
|
||||||
ion-note {
|
ion-note {
|
||||||
color: $item-ios-note-color;
|
color: $item-ios-note-color;
|
||||||
}
|
}
|
||||||
|
@ -33,7 +33,7 @@ $item-md-sliding-content-bg: $background-color !default;
|
|||||||
$item-md-sliding-transition: transform 250ms ease-in-out !default;
|
$item-md-sliding-transition: transform 250ms ease-in-out !default;
|
||||||
|
|
||||||
|
|
||||||
ion-item-group-title {
|
ion-item-divider {
|
||||||
padding: $item-md-padding-top $item-md-padding-right $item-md-padding-bottom $item-md-padding-left;
|
padding: $item-md-padding-top $item-md-padding-right $item-md-padding-bottom $item-md-padding-left;
|
||||||
background-color: $item-md-divider-bg;
|
background-color: $item-md-divider-bg;
|
||||||
color: $item-md-divider-color;
|
color: $item-md-divider-color;
|
||||||
|
7
ionic/components/item/test/dividers/index.ts
Normal file
7
ionic/components/item/test/dividers/index.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
import {App} from 'ionic/ionic';
|
||||||
|
|
||||||
|
|
||||||
|
@App({
|
||||||
|
templateUrl: 'main.html'
|
||||||
|
})
|
||||||
|
class E2EApp {}
|
59
ionic/components/item/test/dividers/main.html
Normal file
59
ionic/components/item/test/dividers/main.html
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
<ion-toolbar><ion-title>Item Divider</ion-title></ion-toolbar>
|
||||||
|
|
||||||
|
<ion-content class="outer-content">
|
||||||
|
|
||||||
|
<ion-item>
|
||||||
|
Plain Ol' div with some text
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item>
|
||||||
|
Single line text that should have ellipses when it doesn't all fit in the item
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item-divider>
|
||||||
|
Item Divider
|
||||||
|
</ion-item-divider>
|
||||||
|
|
||||||
|
<ion-item text-wrap>
|
||||||
|
Multiline text that should wrap when it is too long
|
||||||
|
to fit on one line in the item. Attribute on .item
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item text-wrap>
|
||||||
|
<h1>H1 Title Text</h1>
|
||||||
|
<p>Paragraph line 1</p>
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item text-wrap>
|
||||||
|
<h2>H2 Title Text</h2>
|
||||||
|
<p>Paragraph line 1</p>
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item-divider></ion-item-divider>
|
||||||
|
|
||||||
|
<ion-item text-wrap>
|
||||||
|
<h3>H3 Title Text</h3>
|
||||||
|
<p>Paragraph line 1</p>
|
||||||
|
<p>Paragraph line 2</p>
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item text-wrap>
|
||||||
|
<h4>H4 Title Text</h4>
|
||||||
|
<p>Paragraph line 1</p>
|
||||||
|
<p>Paragraph line 2</p>
|
||||||
|
<p>Paragraph line 3</p>
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
<ion-item>
|
||||||
|
<ion-item-content>
|
||||||
|
Column 1
|
||||||
|
</ion-item-content>
|
||||||
|
<ion-item-content>
|
||||||
|
Column 2
|
||||||
|
</ion-item-content>
|
||||||
|
<ion-item-content>
|
||||||
|
Column 3
|
||||||
|
</ion-item-content>
|
||||||
|
</ion-item>
|
||||||
|
|
||||||
|
</ion-content>
|
@ -10,9 +10,9 @@
|
|||||||
<ion-list>
|
<ion-list>
|
||||||
<ion-item-group *ng-for="#timeSlot of data">
|
<ion-item-group *ng-for="#timeSlot of data">
|
||||||
|
|
||||||
<ion-item-group-title>
|
<ion-item-divider sticky>
|
||||||
{{timeSlot.time}}
|
{{timeSlot.time}}
|
||||||
</ion-item-group-title>
|
</ion-item-divider>
|
||||||
|
|
||||||
<ion-item-sliding *ng-for="#session of timeSlot.talks" [attr.category]="session.category" #sliding-item>
|
<ion-item-sliding *ng-for="#session of timeSlot.talks" [attr.category]="session.category" #sliding-item>
|
||||||
<button ion-item (click)="openSession(session)">
|
<button ion-item (click)="openSession(session)">
|
||||||
|
@ -29,7 +29,7 @@ $list-md-border-color: $item-md-border-color !default;
|
|||||||
margin: 0 $list-md-margin-right $list-md-margin-bottom $list-md-margin-left;
|
margin: 0 $list-md-margin-right $list-md-margin-bottom $list-md-margin-left;
|
||||||
|
|
||||||
ion-header,
|
ion-header,
|
||||||
ion-item-group-title {
|
ion-item-divider {
|
||||||
border-bottom: 1px solid $list-md-border-color;
|
border-bottom: 1px solid $list-md-border-color;
|
||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
padding: $list-md-header-padding;
|
padding: $list-md-header-padding;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<ion-content>
|
<ion-content>
|
||||||
<ion-list>
|
<ion-list>
|
||||||
<ion-item-group *ng-for="#group of groups">
|
<ion-item-group *ng-for="#group of groups">
|
||||||
<ion-item-group-title>{{group.title}}</ion-item-group-title>
|
<ion-item-divider sticky>{{group.title}}</ion-item-divider>
|
||||||
<ion-item *ng-for="#item of group.items">
|
<ion-item *ng-for="#item of group.items">
|
||||||
{{item.title}}
|
{{item.title}}
|
||||||
</ion-item>
|
</ion-item>
|
||||||
|
Reference in New Issue
Block a user