Страницы

Поиск по вопросам

воскресенье, 26 января 2020 г.

Безразмерная верстка, непонятный отступ [закрыт]

#android #css #android_layout #internet_explorer #responsive


        
             
                
                    
                        
                            Закрыт. Этот вопрос не по теме. Ответы на него в данный
момент не принимаются.
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            Хотите улучшить этот вопрос? Переформулируйте вопрос,
чтобы он соответствовал тематике «Stack Overflow на русском».
                        
                        Закрыт 2 года назад.
                                                                                
           
                
        
Вот код



window.onload = window.onresize = function() {
    this.timeout && clearTimeout(this.timeout);
    this.timeout = setTimeout(function() {
        var image =  document.getElementsByTagName('img')[0];
    
        document.documentElement.style.fontSize = image.offsetHeight + '%';   
    }, 10);
    
}
html, body {
    height: 100%;
    width:100%;
    margin: 0;
}
.table {height: 100%; width:100%; display:table;}
.column {
    height: 100%;
    display: table-cell;
    border: 1px solid green;
    vertical-align: top;
}

.column-img {
    display: table-cell;
    height: 100%;
    background: red; /* for debugging */
}

img {
    display: block;
    height: 100%;
}
Content DIV, here will be tables and some another content
работает в IE9, Android Browser и т.п. Слева - резиновый отступ, справа - div с контентом. Ширина отступа зависит от высоты вьюпорта, поэтому сделал через gif-распорку с нужными пропорциями. Распорка и контент должны по высоте быть 100% от вьюпорта, контент занимает все место справа. Если сильно сжать в высоту пример, то вылезает дополнительный глючный отступ красного цвета. Как сделать, чтобы его не было? Есть просьба не предлагать верстать в JS... Спасибо. UPDATE На старом CSS без vh units задачу решить невозможно. Сделал на Javascript. Закрываю ответ - либо js, либо vh units (ныне работает везде)


Ответы

Ответ 1



Глюк браузера, .column-img {5px}, а img{5px}, только перерисовка в браузере спасет. Обновление Если убрать display: block; и добавить, то браузер перерисует опять страничку, и отступ исчезнет. Возможно, проблема в font-size, боюсь, тут поможет эксперимент, т.к. используется хак с gif картинкой, чего, конечно, нет в спецификациях. ;) Попробуйте "поиграть с изменением размера".

Комментариев нет:

Отправить комментарий