Typowe style interfejsu WWW


91

W następnych dniach muszę przedstawić prototyp aplikacji webowej jednemu z moich klientów, rzecz w tym, że nie jestem za dobry w CSS, a co najgorsze, prawie nigdy nie jestem zadowolony z wyników, które osiągam.

Kodowanie logiki biznesowej nie stanowi dla mnie żadnego wyzwania, jednak projekt interfejsu użytkownika zajmuje ponad 80% mojego czasu. Nie potrzebuję nic zapierającego dech w piersiach, wystarczy czyste, ładne i reprezentacyjne otoczenie, przykład:

tekst alternatywny

Jest to powtarzający się problem, który mam, chciałbym, aby tworzenie interfejsu użytkownika sieci Web miało mniej nagi domyślny styl , podejście podobne do Visual Studio lub iPhone SDK byłoby dla mnie bardzo przydatne.

Powyższa makieta stworzona za pomocą Balsamiq Mockups jest świetnym przykładem, wszystkie najpopularniejsze "komponenty" są dostępne do użycia, a co najważniejsze: do wyboru jest tylko jeden dobrze wyglądający styl.

Czy jest coś takiego w sieci? Neutralny, ale przyjemny framework CSS lub JavaScript UI?


Dotychczasowe opcje:

Interesuje mnie informacja, czy istnieją ramy interfejsu użytkownika tylko dla CSS.

Znalazłem tę stronę z bardzo ładną listą bibliotek interfejsu użytkownika sieci Web , ale większość z nich (przynajmniej te dobre) wydaje się być specyficzna dla języka Java, czy są jakieś równie dobre alternatywy w czystym CSS lub JS?

PS: Nie interesuje mnie AJAX, efekty, zachowania i tak dalej ... moim głównym (jedynym) zmartwieniem jest styl.


Dzięki za wszystkie sugestie wszystkim!

Po bardzo dokładnym rozważeniu wszystkich sugerowanych bibliotek UI, doszedłem do wniosku, że ExtJS i Qooxdoo są tymi, które najlepiej odpowiadają moim potrzebom. Interfejs jQuery wydaje się obiecujący, ale oferuje tylko zmniejszoną liczbę elementów.

Jeśli chodzi o biblioteki CSS, to uważam, że BlueTrip / BluePrint i motywy sugerowane przez tamblera są najlepsze. Poza tym warto zbadać Flex i Napkee.

Czas nauczyć się ExtJS teraz! =)


6
Warto zauważyć, że jQuery-UI ma fajnego projektanta motywów, który przyspiesza działanie o nazwie „Theme Roller”: jqueryui.com/themeroller
Nick Craver

Odpowiedzi:


7

Nie mogę uwierzyć, że nikt nie wspomniał:

http://www.extjs.com/

To komercyjne frameworki js, ale dość przystępne cenowo i sprawia, że ​​składanie przyjemnego interfejsu użytkownika jest dziecinnie proste. Jest znacznie bardziej kompletny zestaw elementów niż jqueryui, a jego zadaniem jest stworzenie całej aplikacji. Tylko trochę się tym bawiłem, ale do tej pory naprawdę to kocham. Bezpłatnie do użytku osobistego.

Jeśli naprawdę chcesz poczuć kompletny interfejs użytkownika opracowany za pomocą EXT, wypróbuj ten adres URL:

http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/feed-viewer/feed-viewer.html


@Erik: Dzięki za sugestię. Czy znasz jakieś książki / samouczki, które możesz polecić? Mam mały problem ze zrozumieniem, jak powinienem zintegrować ExtJS z typową aplikacją PHP MVC.
Alix Axel

Najlepszym miejscem do rozpoczęcia są samouczki, które oferuje EXT: extjs.com/learn/Tutorials Jeśli chodzi o integrację z frameworkiem PHP, nie mogę powiedzieć - ale to są twoje strony HTML, więc możesz je zintegrować tak, jak ty zintegrowałbyś jakąkolwiek inną stronę, prawda?
Erik

11

Połączenie 960g dla układu i jQuery-UI do stylizacji jest prawdopodobnie tym, czego szukasz.

Można również wziąć pod uwagę plan ramy CSS zamiast 960gs.


Masz na myśli framework jQuery UI JS lub framework jQuery UI CSS?
Alix Axel

1
Przepraszam za zamieszanie, miałem na myśli jQuery UI CSS framework do stylizacji. Ale nie ma powodu, dla którego nie mógłbyś również włączyć struktury widżetów JS.
Shane O'Grady

Dzięki, przyjrzę się temu. =)
Alix Axel

7

A co z korzystaniem z Dojo i Dijit ?

Dijit to szybki sposób na tworzenie widżetów i elementów. Zawiera również 3 domyślne motywy, które można łatwo modyfikować.

Dobra lista różnych widżetów tutaj


Dijit wydaje się tym, czego potrzebuję, ale nie mogę uzyskać dostępu do strony - nie wiem dlaczego.
Alix Axel

Do której strony nie masz dostępu?
peirix

dijit, ale teraz działa. =) Przyjrzę się temu dokładniej, gdy tylko zbliżę się do komputera (aktualnie przeglądam na telefonie).
Alix Axel

6

Połącz się z kimś, kto specjalizuje się w projektowaniu interfejsu użytkownika.

Jeśli lepiej radzisz sobie z logiką biznesową, lepiej spędzić czas wyłącznie na kodowaniu logiki biznesowej, abyś mógł ją opanować. Będzie to wymagało nauczenia się, jak komunikować się z kimś, kto wyróżnia się w prezentacji. ( XML i json są typowymi środkami)

Logika biznesowa i prezentacja są bardzo różne. Zaprojektowanie systemu, który nie tylko dobrze wygląda, ale jest intuicyjny i łatwy w obsłudze, jest dość trudne. Równie trudne i czasochłonne, jak ustalanie wewnętrznych zasad działania złożonej aplikacji.

Dobry interfejs nie jest tak prosty, jak włączenie frameworka CSS.

Uważam się za bardziej „kreatywnego” programistę, który wyróżnia się prezentacją. Miałem szczęście, że spotkałem kogoś, kto po pierwsze był ... bardzo zmotywowany, a po drugie bardzo dobry w „logice biznesowej”. Miał dużo większe doświadczenie w planowaniu i wdrażaniu złożonych systemów, podczas gdy ja głównie skupiałem się na projektowaniu interfejsów.

Jeśli jesteś bardziej produktywny, zajmując się architekturą systemu, planowaniem, programowaniem itp. ... powinieneś popchnąć się w tym kierunku. Chociaż samodzielne projekty rozwojowe mogą być raczej satysfakcjonujące, uważam to za nieefektywne. Bardzo rzadko ktoś ma umiejętności samodzielnego tworzenia aplikacji na najwyższym poziomie.

Wyzwaniem jest znalezienie kogoś, z kim dobrze się pracuje.



3

Istnieje kilka frameworków ukierunkowanych na (G) UI Design; Qooxdoo , JQuery UI i MochaUI to tylko kilka z nich (chociaż ten ostatni jest bardziej sprawdzeniem koncepcji niż użytecznym frameworkiem). Te frameworki zwykle oferują różnorodne elementy oparte na JS (elementy formularzy, takie jak pola wejściowe i przyciski przesyłania, ale także inne elementy, takie jak karty). Jednak to do Ciebie nadal będzie należało umiejscowienie tych elementów i może nadanie im odpowiedniego stylu.

Być może zapoznanie się z frameworkiem CSS (takim jak 960GS ) może uzupełnić powyższe ramy JS UI.

(Jako osobiste zastrzeżenie; mam bardzo małe doświadczenie z którymkolwiek z wymienionych powyżej frameworków. Jestem jednak pewien, że Google lub SO mogą udzielić odpowiedzi, których nie mogę).


1
960.gs naprawdę nie robi zbyt wiele stylizacji - potrzebujesz do tego czegoś takiego jak Bluetrip ( bluetrip.org ). 960.gs tak naprawdę zapewnia tylko układ oparty na siatce.
Dominic Rodger

Rzuciłem okiem na sugerowane przez Ciebie frameworki, qooxdoo wydaje się zbyt skomplikowane (wszystko wydaje się być zdefiniowane w Javascript - nawet dane wejściowe formularzy itp.), MochaUI ma naprawdę ładny interfejs z bardzo fajnymi neutralnymi kolorami, nie widziałem kod źródłowy, ale wydaje się również dość ograniczony (brakuje wielu elementarnych stylów). jQuery UI wydaje się jak dotąd najlepszą opcją. 960.gs jest fajne, ale jak powiedział Dominic, nie jest do stylizacji.
Alix Axel

3

To nie pomoże ci w twoim obecnym projekcie, ale warto to rozważyć przy przyszłych projektach. Po wielu latach tworzenia aplikacji GUI w HTML 4 i ciągłych zmaganiach z ograniczeniami CSS i HTML, pomyślałem, że wypróbuję Adobe Flex. Co za poprawa!

Zamiast udawać kontrolkę strony z zakładkami lub siatkę danych, za pomocą Flex lub Silverlight, Twój znacznik może po prostu określić kontrolkę strony z kartami lub siatkę danych. Struktury są dostarczane z domyślnymi stylami, które są nudne, ale wcale nie złe. Nie mówię, że całkowicie zastępują HTML, ale jeśli potrzebujesz widżetów i układu GUI, uważam, że są znacznie lepszą alternatywą.


Flex to naprawdę świetne narzędzie, ale weź pod uwagę, że obecnie świat zmierza w kierunku HTML 5, a flex ma wiele problemów z rozmiarem i wielojęzycznością, gdzie wygrywa javascript i co myślisz o cenie, ale wciąż myślę, że flex to świetne narzędzie
tawfekov

Naprawdę mam nadzieję, że czyste rozwiązanie HTML / Javascript / CSS dla aplikacji wyłoni się z procesu standardów.
Jacob

Flex może być dość nieporęczny i nie jest tak przyjazny dla wyszukiwarek ... ale moim zdaniem systemu nie da się pokonać. Nie jestem „starszym” programistą internetowym, ale naprawdę widzę korzyści płynące z pracy we frameworku flex. Adobe ma naprawdę dobry system. Sama możliwość kodowania na komputery stacjonarne / internetowe / ORAZ mobilne w JEDNEJ platformie / standardowych środkach dostarczania jest cenna poza słowami.
Derek Adair


2

Takie makiety szkieletowe są doskonałym sposobem na rozpoczęcie.

Korzystając z większości omawianych tutaj framewroksów interfejsu użytkownika, chciałbym pokierować Cię w stronę jQueryUi z następujących powodów:

  1. Framework jQueryUI CSS dba o spójny i fajnie wyglądający CSS dla Ciebie (to naprawdę proste - po prostu zrób trochę znaczników i zastosuj klasy)

  2. jQueryUI ma kontrolę tabulatorów i mnóstwo schludnych, szybkich i łatwych sposobów stylizacji formularzy.


Ze wszystkich sugerowanych opcji jestem bardziej skłonny do ExtJS, czy kiedykolwiek z niego korzystałeś? Jak porównujesz to do interfejsu użytkownika jQuery?
Alix Axel

ExtJS jest bardzo dojrzałe i kompletne. Należy pamiętać, że jest to podwójna licencja GPL i komercyjna. To naprawdę jest interfejs widgetu przeznaczony dla bardzo bogatych interfejsów użytkownika. Więc jeśli chcesz czegoś bardziej „korporacyjnego” i mniej „przyjaznego”, to wcale nie jest zły wybór. Jedyną rzeczą jest to, że ma trochę krzywej uczenia się, tak naprawdę jest całą strukturą samą w sobie. Bardziej przypomina programowanie GUI niż web. Powodzenia
Rich


2

Stosunkowo nowy framework PHP zaprojektowany specjalnie do tworzenia oprogramowania obsługującego interfejs użytkownika. Elementy, które tu masz, w tym karty, filtry i siatki, są uwzględnione i zajmują około 20 linii kodu do zaimplementowania.

http://agiletoolkit.org/


1

Czy próbowałeś Axure ? Jest to narzędzie do szybkiego tworzenia makiet, prototypów i specyfikacji dla aplikacji i witryn internetowych.

Działa podobnie do Balsamiq, ale pozwala na eksportowanie makiet / prototypów jako HTML, CSS i Javascript.

Następnie możesz przesłać to na serwer lub uruchomić na swoim komputerze jako działający przykład.

Możesz tworzyć formularze, linki, zakładki, najazdy, efekty Javascript.


Dzięki, Axure wydaje się miły, ale nie o to mi chodzi.
Alix Axel

1

Jeśli używasz już Balsamic Mockups do swoich prototypów, powinieneś rozważyć Napkee . Cytując stronę internetową „Napkee umożliwia eksportowanie makiet Balsamiq do formatu HTML / CSS / JS i Adobe Flex 3 jednym kliknięciem przycisku”.


1

Wpadłem na to jakiś czas temu i nie mogłem nic znaleźć, więc wykorzystałem to jako okazję do nauczenia się css. Ale od tamtej pory wydaje się, że poczyniono wielkie postępy w tym temacie.

  • Podsumowując Twój problem, istnieje strona Wikipedii .
  • Istnieje yaml-css , który pobiera yaml i zamienia go w css
  • Istnieje podstawa , ale zakłada pewną wiedzę o CSS.
  • Proponuję również przyjrzeć się Adobe Dreamweaver . Mają wiele narzędzi do generowania CSS i stylów, które tworzą bardzo czytelny i kompatybilny z W3c kod.

Mam nadzieję że to pomogło.



1

Niedawno odkryłem fajną stronę internetową o nazwie iplotz.com, na której możesz stworzyć makietę swojej aplikacji / witryny / projektu online bez instalowania czegokolwiek. Posiada również większość typowych elementów sterujących, a także znacznie więcej funkcji do zarządzania całym projektem i udostępniania go innym online.

Muszę przyznać, że jeszcze tego nie próbowałem, ale trochę na to spojrzałem i wydaje się całkiem fajne. Prawdopodobnie wkrótce go użyję.


To bardzo fajna alternatywa dla Balsamiq, moja przeglądarka to bardzo wolny bankomat, ale od pierwszego wrażenia wydaje się, że jest wart swojej ceny, dzięki.
Alix Axel

0

Wygląda na to, że Sass ma potencjał jako sposób na złagodzenie niektórych bólów głowy związanych z CSS.



Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.