diff --git a/src/app/pages/module-grid/module-grid.component.css b/src/app/pages/module-grid/module-grid.component.css
index 9d64336..1cb0e90 100644
--- a/src/app/pages/module-grid/module-grid.component.css
+++ b/src/app/pages/module-grid/module-grid.component.css
@@ -9,13 +9,44 @@
 * 
 ******************************************************************************
 */
+.row {
+    display: flex;
+    flex-wrap: wrap;
+
+    margin-top:auto;
+    margin-bottom:auto;
+  }
+  .title-footer {
+    display: -webkit-box;
+    display: -ms-flexbox;
+    display: flex;
+    -webkit-box-align: center;
+    -ms-flex-align: center;
+    align-items: center;
+    height: 48px;
+    color: #fff;
+    background: rgba(0,0,0,.38);
+    overflow: hidden;
+ left: 0px;
+ right:0px;
+    position: absolute;
+    bottom: 0px;
+    text-align: center; 
+    border-bottom-left-radius: 10px;
+     border-bottom-right-radius: 10px; 
+     margin-left:15px;
+      margin-right: 15px;
+}
 
 #topcontainer {
-    height: 20px;
+
+    margin-top:auto;
+    margin-bottom:auto;
+    text-align:center;
 }
 
 #centercontainer {
-    width: 1200px;
+    width: 60%;
     margin: 0 auto;
 }
 
@@ -104,7 +135,9 @@
 /* Base */
 
 .element {
-    display: inline;
+    margin: 0px;
+    font-size: 16px;
+    display: block;
     position: relative;
     z-index: 2;
     text-decoration: none;
@@ -117,8 +150,9 @@
     user-select: none;
     -webkit-touch-callout: none;
     -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-    padding: 2px 0px;
+ 
     white-space: nowrap;
+    width: 100%;
     overflow: hidden;
     -webkit-transition: color 1s ease;
     -moz-transition: color 1s ease;
diff --git a/src/app/pages/module-grid/module-grid.component.html b/src/app/pages/module-grid/module-grid.component.html
index b3e0276..3e5b8dd 100644
--- a/src/app/pages/module-grid/module-grid.component.html
+++ b/src/app/pages/module-grid/module-grid.component.html
@@ -14,19 +14,23 @@
 <div>
   <div id="topcontainer"></div>
   <div id="centercontainer">
-    <md-grid-list *ngIf="moduleRights" cols="4" rowHeight="300px" gutterSize="30px" style="padding-top:50px;">
-      <md-grid-tile (click)="goToElogbookIfValid(userModule)" style="cursor: pointer; border-radius: 10px; padding: 50px;" *ngFor="let userModule of userModules"
-        [colspan]="userModule.cols" [rowspan]="userModule.rows" [style.color]="userModule.color" [style.background]="000000"
-        [style.background-image]="'url(' + userModule.pictureLink + ')'" class="md-whiteframe-4dp hvr-grow">
-        <md-grid-tile-footer>
-          <h3 class="element underline-opening">{{userModule.name}}</h3>
-        </md-grid-tile-footer>
-      </md-grid-tile>
-    </md-grid-list>
-    <div *ngIf="!moduleRights" style="text-align: center;">
-      <h2>Der Benutzer hat keine Rechte</h2>
-      <h4>Bitte kontaktieren Sie Ihren Administrator</h4>
+    <div *ngIf="moduleRights" class="row">
+      <div (click)="goToElogbookIfValid(userModule)" [style.color]="userModule.color" [style.background]="000000" style="padding-top:25px; cursor: pointer;width:300px; height:300px"
+        *ngFor="let userModule of userModules" class="col-md-4 md-whiteframe-4dp hvr-grow">
+        <div [style.background-image]="'url(' + userModule.pictureLink + ')'" style=" text-align: center; border-radius: 10px; width:100%; height:100%;">
+          <div class="title-footer">
+            <h3 class="element underline-opening">
+              <span>{{userModule.name}}</span>
+            </h3>
+          </div>
+        </div>
+      </div>
     </div>
   </div>
-  <div id="bottomcontainer"></div>
+  <div *ngIf="!moduleRights" style="text-align: center;">
+    <h2>Der Benutzer hat keine Rechte</h2>
+    <h4>Bitte kontaktieren Sie Ihren Administrator</h4>
+  </div>
+</div>
+<div id="bottomcontainer">
 </div>
\ No newline at end of file
diff --git a/src/app/pages/module-grid/module-grid.component.spec.ts b/src/app/pages/module-grid/module-grid.component.spec.ts
index 9c2bd9c..61e9dec 100644
--- a/src/app/pages/module-grid/module-grid.component.spec.ts
+++ b/src/app/pages/module-grid/module-grid.component.spec.ts
@@ -92,20 +92,6 @@
     expect(component).toBeTruthy();
   });
 
-  it('should show a grid element for each user-module', async(() => {
-    component.userModules = USER_MODULES;
-
-    fixture.detectChanges();
-
-    fixture.whenStable().then(() => {
-      fixture.detectChanges();
-      let des: DebugElement[];
-
-      des = fixture.debugElement.queryAll(By.css('md-grid-tile'));
-      expect(des.length).toBe(USER_MODULES.length);
-    });
-  }));
-
   xit('should navigate to elogbookFE after click on its link', async(() => {
     component.userModules = USER_MODULES;
     /*
