@@ -27,6 +27,145 @@ mdb-form-control {
2727 }
2828}
2929
30+ .select {
31+ ~ .form-label {
32+ position : absolute ;
33+ top : 0 ;
34+ left : $form-label-left ;
35+ padding-top : $form-label-padding-top ;
36+ pointer-events : none ;
37+ transform-origin : 0 0 ;
38+ transition : $form-label-transition ;
39+ color : $form-label-color ;
40+ margin-bottom : 0 ;
41+ }
42+ ~ .form-notch {
43+ display : flex ;
44+ position : absolute ;
45+ left : 0 ;
46+ top : 0 ;
47+ width : 100% ;
48+ max-width : 100% ;
49+ height : 100% ;
50+ text-align : left ;
51+ pointer-events : none ;
52+ div {
53+ pointer-events : none ;
54+ border : $border-width solid ;
55+ border-color : $form-notch-div-border-color ;
56+ box-sizing : border-box ;
57+ background : transparent ;
58+ }
59+ .form-notch-leading {
60+ left : 0 ;
61+ top : 0 ;
62+ height : 100% ;
63+ width : $form-notch-leading-width ;
64+ border-right : none ;
65+ border-radius : $form-notch-leading-border-radius 0 0 $form-notch-leading-border-radius ;
66+ }
67+ .form-notch-middle {
68+ flex : 0 0 auto ;
69+ width : auto ;
70+ max-width : calc (100% - #{$form-notch-middle-max-width } );
71+ height : 100% ;
72+ border-right : none ;
73+ border-left : none ;
74+ }
75+ .form-notch-trailing {
76+ flex-grow : 1 ;
77+ height : 100% ;
78+ border-left : none ;
79+ border-radius : 0 $form-notch-trailing-border-radius $form-notch-trailing-border-radius 0 ;
80+ }
81+ }
82+ & .form-control :not (.placeholder-active )::placeholder {
83+ opacity : 0 ;
84+ }
85+ & .form-control :focus ,
86+ & .active {
87+ & ::placeholder {
88+ opacity : 1 ;
89+ }
90+ }
91+ & .form-control :focus {
92+ box-shadow : none !important ;
93+ }
94+ // &:focus ~ .form-label,
95+ & .active ~ .form-label {
96+ transform : $input-focus-active-label-transform ;
97+ }
98+ & .form-control :focus ~ .form-label {
99+ color : $input-focus-label-color ;
100+ }
101+ & .form-control :focus ~ .form-notch .form-notch-middle ,
102+ & .form-control.active ~ .form-notch .form-notch-middle {
103+ border-top : none ;
104+ border-right : none ;
105+ border-left : none ;
106+ transition : $input-transition ;
107+ }
108+ & :focus ~ .form-notch .form-notch-middle {
109+ border-bottom : $input-focus-border-width solid ;
110+ border-color : $input-focus-border-color ;
111+ }
112+ & :focus ~ .form-notch .form-notch-leading ,
113+ & .active ~ .form-notch .form-notch-leading {
114+ border-right : none ;
115+ transition : $input-transition ;
116+ }
117+ & :focus ~ .form-notch .form-notch-leading {
118+ border-top : $input-focus-border-width solid $input-focus-border-color ;
119+ border-bottom : $input-focus-border-width solid $input-focus-border-color ;
120+ border-left : $input-focus-border-width solid $input-focus-border-color ;
121+ }
122+ & :focus ~ .form-notch .form-notch-trailing ,
123+ & .active ~ .form-notch .form-notch-trailing {
124+ border-left : none ;
125+ transition : $input-transition ;
126+ }
127+ & :focus ~ .form-notch .form-notch-trailing {
128+ border-top : $input-focus-border-width solid ;
129+ border-bottom : $input-focus-border-width solid ;
130+ border-right : $input-focus-border-width solid ;
131+ border-color : $input-focus-border-color ;
132+ }
133+ & :disabled ,
134+ & .disabled ,
135+ & [readonly ] {
136+ background-color : $input-disabled-background-color ;
137+ }
138+ & .form-control-lg {
139+ font-size : $input-font-size-lg ;
140+ line-height : $input-line-height-lg ;
141+ padding-left : $input-padding-left-lg ;
142+ padding-right : $input-padding-right-lg ;
143+ ~ .form-label {
144+ padding-top : $form-label-padding-top-lg ;
145+ }
146+ & :focus ~ .form-label ,
147+ & .active ~ .form-label {
148+ transform : $input-focus-active-label-transform-lg ;
149+ }
150+ }
151+ & .form-control-sm {
152+ padding-left : $input-padding-left-sm ;
153+ padding-right : $input-padding-right-sm ;
154+ padding-top : $input-padding-top-sm ;
155+ padding-bottom : $input-padding-bottom-sm ;
156+ font-size : $input-font-size-sm ;
157+ line-height : $input-line-height-sm ;
158+ ~ .form-label {
159+ padding-top : $form-label-padding-top-sm ;
160+ font-size : $form-label-font-size-sm ;
161+ }
162+ & :focus ~ .form-label ,
163+ & .active ~ .form-label {
164+ transform : $input-focus-active-label-transform-sm ;
165+ }
166+ }
167+ }
168+
30169.form-outline {
31170 position : relative ;
32171 .form-control {
0 commit comments