fbpx

Css

The HTML5 Videochat app can be customizes as layout, aspect, interface with custom Css. This involves more advanced designer skills.

Interface Elements

App uses elements from these interface frameworks:

Fomantic UI
Semantic UI React

Layout

/* Panel Layouts */
.layoutChat {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”;
grid-template-columns: 100%;
grid-template-rows: auto60px;
}
.layoutTabs {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “Menu”
pane”;
grid-template-columns: 100%;
grid-template-rows: 45pxauto;
}
.layoutList {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “scrollable
“Menu”;
grid-template-columns: 100%;
grid-template-rows: auto 45px;
}
.layoutScrollable {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “scrollable”;
grid-template-columns: 100%;
grid-template-rows: 100%;
}
.paneActive
{
visibility: visible;
}
.paneInactive
{
visibility: verborgen;
}
/* App Layouts */
.layoutBroadcast {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “camera history
actions send”;
grid-template-columns: 45%55%;
grid-template-rows: auto55px;
}
.layoutBroadcastAudio {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
“camera”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px45px45px;
}
.layoutPlayback {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video history
actions send”;
grid-template-columns: 65%35%;
grid-template-rows: auto55px;
}
.layoutPlaybackAudio {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
“video”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px45px45px;
}
.layoutText {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px45px;
}
.layoutCollaborationText {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “Tabbladen”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto45px;
}
.layoutWay2 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video camera
video history
actions send”;
grid-template-columns: 65%35%;
grid-template-rows: 40%auto45px;
}
.layoutWay2Audio {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
“video”
“camera”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto45px45px45px45px;
}
.layoutCollaboration {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video tabs
actions tabs”;
grid-template-columns: 65%35%;
grid-template-rows: auto45px;
}
/* Mobile Layouts */
/* For lower resolutions video takes full width and chat shows below */
@media only screen and (maximale breedte: 1150PX)
{
.layoutBroadcast {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “camera”
history
“Verzenden”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto45%45px40px;
}
.layoutPlayback {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video”
history
“Verzenden”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto30%45px40px;
}
.layoutWay2 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video”
history
“Verzenden”
actions
“camera”;
grid-template-columns: 100%;
grid-template-rows: auto25%45px40px25%;
}
.layoutCollaboration {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video”
actions
“Tabbladen”;
grid-template-columns: 100%;
grid-template-rows: auto60px45%;
}
.layoutCollaborationText {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “Tabbladen”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto60px;
}
}
/* For very low resolutions 2 rows action bar */
@media only screen and (maximale breedte: 800PX)
{
.layoutText {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px90px;
}
.layoutCollaborationText {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “Tabbladen”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto90px;
}
.layoutWay2Audio {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
“video”
“camera”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px60px90px90px;
}
.layoutBroadcastAudio {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
“camera”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px90px65px;
}
.layoutPlaybackAudio {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “history
“Verzenden”
“video”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto55px60px90px;
}
.layoutBroadcast {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “camera”
history
“Verzenden”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto35%45px65px;
}
.layoutPlayback {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video”
history
“Verzenden”
actions”;
grid-template-columns: 100%;
grid-template-rows: auto30%55px90px;
}
.layoutWay2 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video”
history
“Verzenden”
actions
“camera”;
grid-template-columns: 100%;
grid-template-rows: auto20%55px90px30%;
}
.layoutCollaboration{
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “video”
actions
“Tabbladen”;
grid-template-columns: 100%;
grid-template-rows: auto90px40%;
}
}
/* Panels/Components */
.layCamera {
position: relatieve;
grid-area: camera;
}
.layVideo {
position: relatieve;
grid-area: video;
}
.layHistory {
position: relatieve;
grid-area: history;
}
.laySend {
position: relatieve;
grid-area: Verzenden;
}
.layActions {
position: relatieve;
grid-area: actions;
}
.layTabs {
position: relatieve;
grid-area: Tabbladen;
}
.layMenu {
position: relatieve;
grid-area: Menu;
}
.layPane {
position: relatieve;
grid-area: pane;
}
.layChat {
position: relatieve;
grid-area: Chat;
}
.layScrollable {
position: relatieve;
grid-area: scrollable;
overflow-y: scroll;
}
/* Split Multimedia Views */
.split0 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “media0”;
grid-template-columns: 100%;
grid-template-rows: 100%;
}
.splitH2 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “media0 media1”;
grid-template-columns: 50%50%;
grid-template-rows: 100%;
}
.splitV2 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “media0
media1”;
grid-template-columns: 100%;
grid-template-rows: 50%50%;
}
.splitH4, .splitV4 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “media0 media1
media2 media3”;
grid-template-columns: 50%50%;
grid-template-rows: 50%50%;
}
.splitH6 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “media0 media1 media2
media3 media4 media5”;
grid-template-columns: 34%33%33%;
grid-template-rows: 50%50%;
}
.splitV6 {
position: absolute;
weergeven: grid;
width: 100%;
height: 100%;
grid-template-areas: “media0 media1
media2 media3
media4 media5”;
grid-template-columns: 50%50%;
grid-template-rows: 34%33%33%;
}
/* Split Multimedia View Slots */
.slot0 {
position: relatieve;
grid-area: media0;
}
.slot1 {
position: relatieve;
grid-area: media1;
}
.slot2 {
position: relatieve;
grid-area: media2;
}
.slot3 {
position: relatieve;
grid-area: media3;
}
.slot4 {
position: relatieve;
grid-area: media4;
}
.slot5 {
position: relatieve;
grid-area: media5;
}
PS: Latest version may have changes or new elements.

Interface CSS

/* Interface Elements, contained in Controls */
/* Video 's */
.localVideo
{
}
.localVideoPlay
{
}
/* History */
.chatMessageList {
position: absolute;
width: 100%;
height: 100%;
overflow-y: scroll;
/* achtergrondkleur: rgb(225, 233, 225); */
padding: 0;
marge: 0;
}
.chatMessageListul {
list-style-type: geen;
}
.chatMessage {
list-style-type: geen;
padding-right: 10PX;
tekengrootte: 12PX;
Kleur: #777;
font-weight: normale;
}
.chatMessage.dark
{
Kleur: #FFF;
}
.chatMessage.notification {
Kleur: #7A7;
tekst uitlijnen: Links;
}
.chatMessage.dark.notification
{
Kleur: #EFE;
}
.chatMessage.automated {
tekenstijl: italic;
Kleur: #7AA;
tekst uitlijnen: Links;
}
.chatMessage.user {
tekst uitlijnen: Links;
}
.chatMessageimg {
vertical-align: middle;
padding: 2PX;
}
.chatMessagelabel {
weergeven: inline-block;
maximale breedte: 85%;
achtergrondkleur: white;
border-radius: 5PX;
padding: 5PX;
marge: 2PX;
}
.chatMessage.darklabel{
achtergrondkleur: #111;
}
.chatMessage.userstrong {
weergeven: inline-block;
tekengrootte: 11PX;
padding: 3PX;
font-weight: normale;
}
.chatMessage.useri {
tekengrootte: 10PX;
padding: 3PX;
}
.chatMessage.user.own {
tekst uitlijnen: rechts;
}