2014-02-19 3 views
26

У меня есть ниже IPython код ноутбука (уценки):IPython ноутбук выровнять таблицу слева от ячейки

#### example table 
|Name|Description| 
|--|-------------------------------| 
|Mary |She is a nice girl.| 
|Jackie |He is a very naughty boy.| 

Результат выглядит следующим образом: enter image description here

Как я могу:

  1. Слева выровняйте таблицу ячейки, по умолчанию она по центру.
  2. Справа выровняйте второй текст col.
+3

3 года спустя, и этот вопрос по-прежнему помогает людям. :-) – TMWP

ответ

20

Ну, да!

| Name | Description | age   
| :- |-------------: | :-: 
|Mary| She is a nice girl. | 20 
| Jackie Junior | He is a very naughty boy. | 5 
  • :--- или --- = Выровнять слева
  • ---: = правому краю
  • :---: = центрируется

table

+0

Прохладный, вы ответили на мой второй вопрос. как насчет первого? Кстати, первый вопрос означает, что вся таблица находится в центре страницы, я хочу выровнять ее слева от границы страницы. – lucky1928

+0

Ах, я не понял, что вы хотите, чтобы стол был выровнен. Для этого я не знаю, я не уверен, что это возможно в Markdown.Но возможно, с nbconvert в html с помощью шаблона, который оставил таблицу выравнивания, изменив свойства CSS таблиц. – jrjc

+1

Не работает в новой ячейке уценки в ноутбуке jupyter (они несколько раз меняли название из ноутбука ipython): Все содержимое ячейки правильно обосновано. Есть идеи? –

19

Ответ на 1-й вопрос - слева выровнять таблицу - создать и запустить код ce LL выше уценки ячейки таблицы, со следующим содержанием:

%%html 
<style> 
table {float:left} 
</style> 
+3

Это заставляет все последующие строки находиться справа от таблицы, а решение Роберто ниже не работает. Итак, как вы положили его слева, не испортив окружающий формат? – orodbhen

+1

@orodbhen Я отредактировал свое решение для работы с новыми стилями jupyter-notebook, не решает ли ваша проблема? –

+0

это не работает для меня, вместо этого работает 'table {text-align: left}'. – weiheng

9

Я хотел бы предложить использовать этот вариант ответа Кнута, что не влияет на поток остальных элементов вокруг стола. Поместите этот код внутри ячейки выше той, которая содержит таблицу:

%%html 
<style> 
    table {margin-left: 0 !important;} 
</style> 
+0

Я только что протестировал оба решения на Python 2.7 в Jupyter/Anaconda 4.2. Решение «float» работает. Левое решение, появившееся в вашем посте, не изменило выравнивание таблицы в моих ноутбуках. Из любопытства вы проверили на 3.x или 2.7? – TMWP

+0

@TMWP Вы правы, что-то изменилось в стилях CSS по умолчанию. Чтобы исправить это, важно добавить в конце стиля (как в отредактированном решении) для решения проблемы. Спасибо за доклад. –

+0

Это исправление для 2.7. Выход также немного чище, чем исходный вывод, который, кажется, добавляет немного пространства в вертикальной плоскости. – TMWP

2

Вы можете сделать индивидуальный заказ в Ipython.

Просто сделать следующий файл с

~/.ipython/profile_default/static/custom/custom.css 

и добавьте следующий код.

table {float: left}; 

и вам не нужно ставить пользовательский css во все файлы ipython.

0

Отвечая на первый вопрос: создавая таблицу и присваивая ей атрибут float: left, вы должны добавить больше CSS, чтобы разрешить текст, который окружает таблицу. Поместите это в код ячейки до вашей уценки клетки

%%html 
<style> 
    table { 
     display: inline-block 
    } 
</style> 

Однако, если у вас есть много CSS, может быть лучше, чтобы поместить его в другой файл для общей красоты документа.

@jrjc отлично отвечает на второй вопрос;)

Смежные вопросы