Исправление стиля / класса сгенерированных PyLDA элементов - PullRequest
0 голосов
/ 18 февраля 2020

Я написал Da sh приложение, в котором я загружаю визуализацию, сгенерированную pyLDAvis в определенный div на странице.

Это работает, но элементы HTML, сгенерированные самим pyLDAvis, кажутся не имеющими CSS имен классов, установленных в большинстве случаев , иногда даже не имеют атрибута ID. Поскольку я использую Speci c CSS с Da sh, в результате некоторые элементы в визуализации отображаются некорректно, в частности, кнопки имеют стиль с моим приложением Da sh CSS, и поэтому они слишком большой:

enter image description here

Поскольку визуализация HTML генерируется живым сгенерированным PyLDAvis кодом JavaScript (в нем нет HTML , просто данные и JS код, это означает, что я не могу установить CSS имена классов кнопок перед загрузкой визуализации.

В результате такие кнопки, как Previous Topic на скриншоте, наследуют стиль CSS от Да sh приложения CSS, так что я могу действительно изменять только глобальные кнопки CSS класс для всех кнопок. Я не хочу этого делать , я бы хотел изменить только кнопки и стили самой визуализации PyLDAvis. Эти элементы похожи на:

<button id="ldavis_el39911402015175373446702437639-topic-down" style="margin-left: 5px">Previous Topic</button>

Макет и обратные вызовы в моем приложении Da sh с вкладками похожи на:

tab_example_layout = html.Div([
    html.Button('Load', id='load_button'),
    html.Div([], id='ldavis_el39911402015175373446702437639'),
    visdcc.Run_js(id='pyldavis')
])

@app.callback(
    Output('pyldavis', 'run'),
    [Input('load_button', 'n_clicks')])
def myfun(n_clicks):
    if n_clicks:
        return ... # generate and slightly adjust pyLDAvis visualization
    return ""

Вопрос: как я могу изменить стиль таких элементов (думаю, после страница и визуализация загружены), особенно. кнопки на скриншоте?

...