Creating a UI Metro UI Page

I would like to create a design similar to the UI interface for Windows 8, as in this example:

Example

Each of these spaces refers to one subpage on my server. The URLs, contents, and background images of the fragments are downloaded from the MySQL database, so nothing is hardcoded. I use Twitter Bootstrap for design purposes.

There are three different sizes for each tile:

  • large (span 1)
  • medium (span 7)
  • small (span 2)

I can easily deal with medium and small plates, since each of them covers only one row. small tiles have a class col-md-3, large and medium tiles use col-md-6. I can come up with the required markup for such a design:

<div class='row'>
    <span class='size-large col-md-6'>span 1</span>
    <span>
        <span class='row'>
            <span class='size-small col-md-3'>span 2</span>
            <span class='size-small col-md-3'>span 3</span>
        </span>
        <span class='row'>
            <span class='size-small col-md-3'>span 4</span>
            <span class='size-small col-md-3'>span 5</span>
        </span>
    </span>
</div>
<div class='row'>
    <span class='size-small col-md-3'>span 6</span>
    <span class='size-medium col-md-6'>span 7</span>
    <span class='size-small col-md-3'>span 8</span>
</div>
<div class='row'>
    <span class='row'>
        <span class='size-medium col-md-6'>span 9</span>
    </span>
    <span>
        <span class='size-small col-md-3'>span 11</span>
        <span class='size-small col-md-3'>span 12</span>
    </span>
    <span class='size-large col-md-6'>span 10</span>
</div>

. : .

, : $size, $name, $description, $background.

:

$width = 0;
echo "<div class='row'>";
foreach (Project::getAllTiles() as $i => $project) {
    $thisWidth = 0;
    list($size, $name, $description, $image) =
        array($project['size'], $project['name'], $project['description'], $project['background']);
    $thisWidth = $size == 'small' ? 3 : 6; // Width of this tile
    $width += $thisWidth; // Width of current row
    if ($width > 12) {
        echo "</div><div class='row'>"; // Jump to next row
        $width = 0; // Reset width of row
    }
    echo "<div class='col-md-$thisWidth size-$size'>";
        echo $name; // Placeholder
    echo "</div>";
}
echo "</div>";

. , . , - , - , .

+4
2

, , . Metro Bootstrap, - - .

Metro UI ( ). , PHP, Metro UI.

+3

Metro UI. Metro UI .

1

zip Metro-UI-CSS-master https://github.com/olton/Metro-UI-CSS. zip . Metro-UI-CSS-master.

2

Metro-UI-CSS-master . css : -C:\xampp\htdocs\xampp\doc \ css: -C:\xampp\htdocs\xampp\doc\user\css

'/Metro-UI-CSS-master' css .

C:/XAMPP/HTDOCS/XAMPP/DOC//CSS/-UI-CSS-/

3

Metro-UI html-. 'index.tpl'. 'Index.tpl'is ' C:\xampp\htdocs\xampp\doc\user\html ', .

<link href="css/Metro-UI-CSS-master/build/css/metro.css" rel="stylesheet">
<link href="css/Metro-UI-CSS-master/build/css/metro-icons.css" rel="stylesheet">
<script src="http://metroui.org.ua/js/jquery-2.1.3.min.js"></script>
<script src="css/Metro-UI-CSS-master/build/js/metro.js"></script>

<link href="http://metroui.org.ua/css/metro.css" rel="stylesheet">
<link href="http://metroui.org.ua/css/metro-icons.css" rel="stylesheet">
<script src="http://metroui.org.ua/js/jquery-2.1.3.min.js"></script>
<script src="http://metroui.org.ua/js/metro.js"></script>

( UI)

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="description" content="Metro, a sleek, intuitive, and powerful framework for faster and easier web development for Windows Metro Style.">
<meta name="keywords" content="HTML, CSS, JS, JavaScript, framework, metro, front-end, frontend, web development">
<meta name="author" content="Sergey Pimenov and Metro UI CSS contributors">
<link rel='shortcut icon' type='image/x-icon' href='../favicon.ico' />
<title>Sample Metro</title>
<link href="css/Metro-UI-CSS-master/build/css/metro.css" rel="stylesheet">
<link href="css/Metro-UI-CSS-master/build/css/metro-icons.css" rel="stylesheet">
<script src="http://metroui.org.ua/js/jquery-2.1.3.min.js"></script>
<script src="css/Metro-UI-CSS-master/build/js/metro.js"></script>
</head>
<body>
<h1>Hello world!</h1>
<div class="countdown" data-role="countdown" data-days="2"></div>
</body>
</html>
-1

Source: https://habr.com/ru/post/1547123/


All Articles