Kontrolka jest stosunkowo prosta: składa się z dwu elementów. Ikony w kształcie strzałki, służącej do przejścia do okna z listą oraz tytułu aktualnie wybranej pozycji. Kod HTML dla powyższego przykładu, obramowanie, wyrównanie jest trywialny więc nie będę go omawiał.
zwiększanie funkcjonalności
Taką kontrolkę możemy wzbogacić o dodatkową funkcjonalność, podnoszącą ergonomię programu. Przykładowo częstym działaniem użytkownika jest potrzeba dopisania nowej pozycji i następnie wybrania jej.Dodanie przycisku dodaj wydaje się oczywiste. Ale tak nie jest. Taki dodatkowy przycisk to strata cennego miejsca na ekranie oraz drobna utrata czytelności.
Natomiast możemy skonstruować kontrolkę dynamicznie zmieniającą się pod wpływem działania użytkownika. W tym przykładzie Przycisk DODAJ wraz z tytułem ukazuje się dopiero gdy użytkownik najedzie na na pole. Gdy myszka jest poza to kontrolna jest w swojej podstawowej, surowej formie. Taka zmienność naturalnie podkreśla i uwypukla dodatkową funkcjonalność.
kod css
.fieldpicksupp{
position: absolute;
right:0;
top:0;
height:100%;
width:60px;
background:url(mark16.png) no-repeat right top;
display:none;
}
.fieldpick:hover .fieldpicksupp{ display:block;}
Powyżej jest zawarty fragment kodu css. Nie jest to gotowy przykład, myślę jednak że taki fragment wystarczy do przekazanie podstawowej idei. Dość powiedzieć że fieldpick jest identyfikatorem klasy kontrolki, a fieldpicksupp identyfikatorem klasy przypisanej do fragmentu mającego się ujawnić gdy użytkownik najedzie na kontrolkę. Cała dynamika uzyskana jest poprzez wykorzystanie pseudo klasy :hover, dzięki której możemy przypisać różne atrybuty kontrolce w zależności od akcji użytkownika. Dzięki jej istnieniu całe zagadnienie sprowadza się do kilku deklaracji w CSS, nie musimy zupełnie zaprzęgać do tego języka skryptowego.
cieniowanie
Dodanie nowego elementu do kontrolki, który przykrywa (chociaż tylko czasami) tytuł zmniejsza użyteczność programu. Aby to ograniczyć można spowodować aby ten dodatkowy element stał się półprzeźroczysty. Przy odpowiednio dobranych parametrach widzimy i pełny tytuł i ukazujący się przycisk.
.fieldpicksupp span{
background: -moz-linear-gradient(left, rgba(159,210,204,0.9), rgba(235,255,255,0.3));
background: -webkit-gradient(linear,left top ,right top, from( rgba(159,210,204,0.8)), to(rgba(235,255,255,0.3)));
}
Aby podkreślić walory estetyczne wykorzystano gradientowe wypełnienie tła. Jest to jedno z możliwości wprowadzonych w HTML5, dostępnych w przeglądarkach opartych o Mozillę oraz WebKit. Niestety nie jest to jeszcze zatwierdzony standard, więc wpisy są oddzielne dla każdej z przeglądarek (każdy ma indywidualny prefix).
Brak komentarzy:
Prześlij komentarz